Іздеу жүйесін оңтайландырудағы алғашқы қадамдар Қарапайым машиналар форумы: авторлық құқықты және сыртқы сілтемелерді жою. Форум механизмін автоматты түрде анықтау PHP тақырыбының жеке индексі smf арқылы жұмыс істейді

Іздеу жүйесін оңтайландырудағы алғашқы қадамдар Қарапайым машиналар форумы: авторлық құқықты және сыртқы сілтемелерді жою. Форум механизмін автоматты түрде анықтау PHP тақырыбының жеке индексі smf арқылы жұмыс істейді

Менің Joomlaсыз өмір сүре алмайтынымды бәрі біледі, бірақ менің ойымша, компоненттер үшін жақсы форум жоқ. Сондықтан мен форум қозғалтқыштарымен жұмыс істеймін. Жақында ғана қолдана бастаған жаңаларының бірі - пайдалы материалдармен жаңа SMF санатын бастайық. Біз кішкентайдан бастаймыз және жаңадан бастағандар үшін бұл өте пайдалы.

Іздеу жүйесін оңтайландырудағы алғашқы қадамдар Қарапайым машиналар форумы: авторлық құқықты және сыртқы сілтемелерді жою

Мен тек smf 2-мен жұмыс істейтінімді бірден ескертемін және бұл мақала тегін форум қозғалтқышының осы нұсқасына қатысты болады.

Сонымен, тұрақты оқырмандар қозғалтқыштардың ресми веб-сайттарына, соның ішінде форумдарға арналған «10» сыртқы сілтемелерді қоюды ұнатпайтынымды біледі. Сондықтан, ең алдымен, біз авторлық құқықты алып тастаймыз және пішіннің 4 сыртқы сілтемесіне назар аударамыз « SMF 2.0.2 | Қарапайым машиналар | SMF © 2011 | XHTML"! Ол үшін сайтқа FTP форумы/Тақырыптар/ арқылы қосылыңыз. тақырыбыңыздың атауы/ және файлды өңдеңіз index.template.php. Әрине, ең төменгі жағында бізге ұнамайтын сыртқы сілтемелерді көрсететін код (шамамен 330-жол) бар. Сондықтан біз жоямыз: «

  • ", theme_copyright(), "
  • « Және »
  • ", $txt["xhtml"],"
  • ". Мұның бәрі өте қарапайым және оңай. Алдағы жарияланымдарда SMF/ форумдарын жылжыту және оңтайландыру туралы жаңа материалдарды күтіңіз.

    Негізгі сценарий кодымен бірден бастайық:

    #!/usr/bin/perl

    # which-forum.pl сценарийі
    № (c) 2010 Александр А Алексеев, http://site/

    қатаң қолдану;

    # түсініктеме берілген жолдар - қатаңдық үшін
    # егер тапсырма қозғалтқыш статистикасын жинау болса, оны сол күйінде қалдырыңыз
    # егер сіз форумдар тізімін жасасаңыз - түсініктеме қалдырмаңыз

    менің $деректерім;
    $деректер .= $_while (<> ) ;

    # төменгі деректемедегі сілтемесіз phpBB арқылы қанша қуат алғанын тексеріңіз
    phpbb басып шығару \n"
    егер ($деректер =~ /]+href="[^"]*http:\/\/(?:www\.)?phpbb\.com\/?"[^>]*>phpBB/iнемесе
    # $деректер =~ /viewforum\.php\?[^""]*f=\d+/i немесе
    $деректер =~ /phpBB\-SEO/i немесе
    $деректер =~ /) ;
    «ipb \n"
    егер ($деректер =~ /]+href="[^"]*http:\/\/(?:www\.)?invision(?:board|power)\.com\/?[^"]*"[^>]*> [^<]*IP\.Board/i немесе
    $деректер =~ /]+href="[^"]*http:\/\/(?:www\.)?invisionboard\.com\/?"[^>]*>Invision қуат тақтасы/iнемесе
    $деректер =~ /

    /інемесе
    $деректер =~ /index\.php\?[^""]*showforum=\d+/i) ;
    «vbulletin \n"
    егер ($деректер =~ /Қуат:?[^<]+vBulletin[^<]+(?:Version)?/i немесе
    $деректер =~ /) ;
    басып шығару "smf \n"
    егер ($деректер =~ /]+href="[^"]*http:\/\/(?:www\.)?simplemachines\.org\/?"[^>]*>Қуат SMF/iнемесе
    $деректер =~ /индекс\.php\?[^""]*тақта =\d+\.0/i) ;
    «punbb \n"
    егер ($деректер =~ /]+href="[^"]*http:\/\/(?:(?:www\.)?punbb\.org|punbb\.informer\.com)\/?"[^>]*> PunBB/i); #немесе
    # $деректер =~ /viewforum\.php\?[^""]*id=\d+/i);
    «fluxbb \n"
    # if($деректер =~ /viewtopic\.php\?id=\d+/i немесе
    егер ( $деректер =~ /]+href="http:\/\/(?:www\.)fluxbb\.org\/?"[^>]*>FluxBB/i) ;
    басып шығару "exbb \n"
    егер ($деректер =~ /]+href="[^"]*http:\/\/(?:www\.)?exbb\.org\/?"[^>]*>ExBB/i); # немесе
    # $деректер =~ /forums\.php\?[^""]*форум=\d+/i);
    басып шығару "yabb \n"
    егер ($деректер =~ /]+href="[^"]*http:\/\/(?:www\.)?yabbforum\.com\/?"[^>]*>YaBB/iнемесе
    $деректер =~ /YaBB\.pl\?[^""]*num=\d+/i );
    dleforum басып шығарыңыз \n"
    егер ($деректер =~ /\(DLE форумы арқылы жұмыс істейді\)<\/title>/інемесе
    $деректер =~ /]+href="[^"]+(?:http:\/\/(?:www\.)?dle\-files\.ru|act=copyright)[^"]*">DLE форумы<\/a>/і) ;
    басып шығару "ikonboard \n"
    егер ($деректер =~ /]+href="[^"]*http:\/\/(?:www\.)?ikonboard\.com\/?[^"]*"[^>]*>Ikonboard/iнемесе
    $деректер =~ /\n"
    егер ($деректер =~ /
    # if($деректер =~ /forums\.php\?fid=\d+/i немесе
    # $деректер =~ /тақырып\.php\?fid=\d+/i немесе
    егер ($деректер =~ /]+href="http:\/\/(?:www\.)?flashbb\.net\/?"[^>]*>FlashBB/i) ;
    басып шығару "stokesit \n"
    # if($деректер =~ /forum\.php\?f=\d+/i немесе
    егер ($деректер =~ /]+href="http:\/\/(?:www\.)?stokesit\.com\.au\/?"[^>]*>[^\/]*Stokes IT/i) ;
    «подум» басып шығару \n"
    # if($деректер =~ /тақырып\.php\?t=\d+/i немесе
    егер ($деректер =~ /]+href=[""]?http:\/\/(?:www\.)?sopebox\.com\/?[""]?[^>]*>Подиум/i) ;
    басып шығару "usebb \n"
    # if($деректер =~ /форум\.php\?id=\d+/i немесе
    егер ($деректер =~ /]+href="http:\/\/(?:www\.)?usebb\.net\/?"[^>]*>UseBB/i) ;
    "wrforum" басып шығару \n"
    # if($деректер =~ /индекс\.php\?fid=\d+/i немесе
    егер ($деректер =~ /]+href="http:\/\/(?:www\.)?wr\-script\.ru\/?"[^>]*>WR\-Форум/i) ;
    басып шығару «yetanotherforumnet \n"
    егер ($деректер =~ /Тағы бір форум\.net/i немесе
    $деректер =~ /default\.aspx\?g=posts&t=\d+/i) ;

    Постта айтылған осы және басқа сценарийлерді осы мұрағаттан таба аласыз.

    Сценарий which-forum.pl HTML бет кодын оның форум механизмінің қолтаңбалары бар-жоғын тексеру үшін зерттейді. Біз WordPress пен Joomla-ны анықтау кезінде ұқсас әдісті қолдандық, бірақ бірнеше айырмашылықтар бар. Біріншіден, сценарийдің өзі бет кодын жүктемейді, бірақ оны stdin немесе аргумент ретінде берілген файлдан оқиды. Бұл бетті бір рет жүктеп алуға мүмкіндік береді, мысалы, wget көмегімен, содан кейін бізде біреуден көп болса, оны бірнеше анализаторлар арқылы іске қосыңыз. Екіншіден, бұл сценарийде қолтаңбаның болуы қозғалтқыштың 100% белгісі болып табылады. Соңғы рет қолтаңбаның болуы сәйкес қозғалтқышқа салмақ қосты және ең үлкен салмақты қозғалтқыш «жеңді». Мен бұл жағдайда мұндай тәсіл тек кодты қажетсіз қиындатады деп шештім.

    Сценарийді тексеру үшін мен біраз зерттеулер жасадым. Мен бірнеше мың форумдардың тізімін жасадым және олардың әрқайсысын сценарий арқылы жүргіздім, осылайша бағдарлама жауаптарының пайызын және әртүрлі қозғалтқыштардың танымалдылығын анықтадым.

    Форумдар тізімін алу үшін мен Google талдаушыны қолдандым. Осындай сұраулар іздеу жүйесіне жіберілді

    сайт:forum.*.ru
    сайт: talk.*.ru
    сайт:board.*.ru
    сайт:smf.*.ru
    сайт: phpbb.*.ru
    ....

    тағыда басқа. Сұрау генераторының толық кодын файлдан табасыз gen-forumsearch-urls.pl. zone.ru сайтынан басқа .su .ua .kz және .by да пайдаланылды. Өткен жолы мұндай зерттеуді жүргізу қиынға соқты, өйткені WordPress және Joomla сайттарында URL мекенжайында мұндай қолтаңбалар жоқ. cmsmagazine.ru/catalogue/ сияқты каталогтар жеткілікті үлгі өлшемін қамтамасыз етпейді. 600 Drupal сайты дегеніміз не?

    Мойындауым керек, эксперимент нәтижелері мені ренжітті. Зерттелген 12 590 сайттың қозғалтқышы тек 7 083-де сәтті анықталды, яғни тек 56% жағдайда. Мүмкін мен кейбір қозғалтқышты ескермеген шығармын? Форумдардың жартысында Bitrix орнатылғаны рас па? Немесе қолтаңбаларды іздеуге көбірек уақыт жұмсауым керек пе еді? Жалпы, мұнда қосымша зерттеулер қажет.

    Сәтті анықталған қозғалтқыштардың 56% ішінде ең танымалы, күткендей, IPB (31%), phpBB (26,6%) және vBulletin (26,5%) болды.

    Олардан кейін SMF (5,8%) және DLEForum (5,3%) үлкен артта қалды. Менің сүйікті punBB тек 6-шы орында болды (1,64%). Мен бұл сандарға көп сенуді ұсынбаймын (олар RuNet-тегі әрбір үшінші форум IPB-де жұмыс істейді деп айтады), бірақ, әрине, белгілі бір тұжырымдар жасауға болады.

    Мысалы, егер сіз форум қозғалтқышында сайт жасағыңыз келсе және форумды өзгертуді жоспарласаңыз, мысалы, аптасына бір рет қаражатты автоматты түрде алу арқылы әр хабарлама үшін пайдаланушыларға $ 0,01 төлеңіз, онда сіз ең танымал үш қозғалтқыштың бірін таңдауыңыз керек. Форум неғұрлым танымал болса, оны жақсы білетін бағдарламашыны табу мүмкіндігі соғұрлым жоғары болады.

    Егер қозғалтқышта айтарлықтай өзгерістер күтілмесе, SMF немесе punBB сияқты танымал емес қозғалтқышты таңдау мағынасы бар. Бұл сіздің форумыңыздағы хакерлік шабуылдардың санын және оған автоматты түрде жіберілетін спам мөлшерін азайтады.

    Форумдарды іздеуге/анықтауға арналған сценарийлер сонымен қатар көптеген практикалық қолданбаларды таба алады. Менің ойыма келген бірінші нәрсе - анықталған форумдарды TIC бойынша сұрыптау және менің сайттарымның біріне сілтемелері бар алғашқы жүз хабарламада жариялау болды. Дегенмен, жүздеген форумның dofollow сілтемелері TCI-ге ешқандай әсер етпеді (2 жаңарту өтті), сондықтан сіз ауысуларға қызығушылық танытпасаңыз, уақытты босқа өткізбегеніңіз жөн.

    Сценарийлердің аталған қолданылуы жалғыз нәрседен алыс екені анық. Менің ойымша, сіз оларды басқа қалай қолдануға болатынын оңай анықтай аласыз.

    Сәлем, құрметті блог сайтының оқырмандары. Сонымен, біз бұл туралы постта бастаған SMF деп аталатын форум қозғалтқышын орнату тақырыбын жалғастырамыз. Онда біз әлі ағылшын интерфейсінен аударма тұрғысынан форумды орысшалаған жоқпыз. Қазіргі уақытта ол өте көрнекті болып көрінбейді, бірақ орыстандырудан кейін (егер ол әлі жасалмаған болса) және тиісті бөлімдерді жасағаннан кейін оның сыртқы түрі айтарлықтай жақсарады.

    Бүгін біз дизайн тақырыптарын қарастырамыз және оны орысша етеміз, сонымен қатар екі қозғалтқышпен де (Jumla және SMF) жұмыс істей алатын JFusion құрамдас бөлігін орнатамыз, бұл бізге екі және тек бір пішін үшін ортақ пайдаланушы базасын алуға мүмкіндік береді. тіркелу және кіру.

    Орыс тілі пакетінің тақырыптары және орнату

    Simple Machines Forum механизмі тақырыптарды өзгерту мүмкіндігін қолдайды және оларды бүкіл форум үшін де, атап айтқанда оның жеке бөлімдері үшін де өзгертуге болады. Жеке өзім әдепкі тақырыпты қолдандым, бірақ оған қолмен көптеген өзгерістер енгіздім. Атап айтқанда, мен фонын, кейбір элементтердің түстерін өзгерттім, флэш-дискке сағатты, радионы және тағы басқаларды қостым, бұл туралы осы бөлімдегі келесі жазбаларда айтатын боламын.

    Неліктен форумды құру кезінде қосымша тақырыптардың ешқайсысын пайдаланбадым? Жарайды, бәрі менің жалқаулығымнан болса керек. Жоқ, мен жаңа тақырыптарды іздеуге және жүктеуге жалқау емеспін, бақытымызға орай, мұны жасауға болатын көптеген жерлер бар. Менің жалқаулығым басқа жерде.

    Бұл қозғалтқыштың мүмкіндіктерін кеңейтуге арналған модтердің барлық алуан түрі әдепкі тақырыпқа арнайы бағытталған. Түсіндірейін. Егер сізде әдепкі тақырып болса, SMF-ге мод қосу бірнеше секунд ішінде орын алады және, әдетте, кодты қолмен өңдеуді қажет етпейді.

    Егер сіз әдепкіден басқа дизайн тақырыбымен мод орнатсаңыз, сізге олар айтқандай, барлық өңделмеген бөліктерді файлмен өңдеу қажет болады. Басқаша айтқанда, сізге FileZilla (оны жүктеп алыңыз және конфигурациялаңыз; сіз FTP арқылы сайтқа кіре аласыз және осы мод өзгертулер енгізетін форум қозғалтқышының файлдарын өңдеу үшін аша аласыз).

    Содан кейін кодтың дұрыс орнын іздеңіз және қажетті әрекеттерді орындаңыз: кодты ауыстыру, немесе жою, немесе қажетті фрагменттің алдында немесе кейін код бөлімін қосу. Егер өзгертулер енгізу қажет болатын он шақты файл болуы мүмкін деп есептесеңіз, мұны істеу қаншалықты қиын болатынын елестете аласыз. Бұл жағдайда сіз өте мұқият болуыңыз керек және қателеспеуіңіз керек, өйткені әйтпесе форум мүлдем ашылмауы мүмкін.

    Егер әдепкі емес тақырыпты пайдаланудың жоғарыда аталған барлық мәселелері сізді қорқытпаса, оларды осы жерден жүктеп алуға болады. Ондағы тақырыптар бөлімдерге сұрыпталған (минимализм, классикалыққа жақын, заманауи және т.б.) және олардың әрқайсысы үшін толық экранда оның скриншотын көруге болады. Осы тақырыптарды қалай орнату керектігін сәл кейінірек айтамын.

    Егер сіз осы шығарманың бірінші бөлігінде сипатталғандай, қозғалтқыш файлдарын хостингке жүктеп салу кезеңінде форумды орысшаламаған болсаңыз (мақаланың ең басындағы сілтемені қараңыз), онда сіз мұны қазір жасай аласыз. Осы беттен бұрын жүктелген талап етілетін орыс тіліндегі буманы ашу керек, содан кейін Тақырыптар қалтасын сол атпен каталог бар түбірлік қалтаға көшіру керек.

    Көшіру аяқталғаннан кейін сіз әкімшінің пайдаланушы аты мен құпия сөзін пайдаланып форумға кіруіңіз керек. Жоғарғы мәзірде «Әкімші» тармағын таңдап, сол жақ бағандағы «Сервер параметрлері» түймесін басыңыз.

    Ашылған терезеде «Форумның әдепкі тілі» тармағын тауып, ашылмалы тізімнен орыс тілін таңдаңыз, содан кейін беттің төменгі жағындағы «Сақтау» түймесін басыңыз.

    Болды, енді конференцияңыз толығымен орыс тілінде.

    Орыс тілін қолдамайтын модтарды орнату кезіндегі мәселелерді шешу

    Болашақта SMF-ге орысша аудармасы жоқ модтарды қосқанда, сізде кейде басқару панелінде мод параметрлерін көрсетуде мәселе туындауы мүмкін екенін ескеріңіз. Шындығында, дәл осындай параметрлер әкімші панелінде көрінбейді, себебі... олар үшін орыстандыру файлдары болмайды. Сондықтан сізде бұл мәселені шешудің екі нұсқасы болады.

    Бірінші әдіс - бүкіл форум үшін ағылшын тіліне ауысу. Мұны қалай жасауға болатынын жоғарыдағы бірнеше параграфтан көруге болады. Тиісінше, осы параметрлермен қажетті әрекеттерді орындағаннан кейін сізге қайтадан орыс тіліне оралу қажет болады.

    Екінші әдіс күрделірек, бірақ ол бізге әкімші панелінде орнатылған режимдердің параметрлерін ағылшын тілі қосылғанда ғана емес, әрқашан көруге мүмкіндік береді. Мен бұл мәселеге егжей-тегжейлі тоқталамын, себебі біреу мод орнатып, оның параметрлерін конференциясының басқару тақтасында таба алмайды деген сұрақ өте жиі кездеседі.

    Сонымен, екінші әдіс - жаңадан қосылған модтар үшін орыстандыру файлдарына аударма жолдарын қосу. Қай орыстандыру файлдарын өзгерту керек екенін және оларды қайдан алуға болатынын қалай анықтау керектігін кейінірек айтамын. Әзірше, уақытша, бірінші әдісті қолдануға болады.

    Веб-сайт пен форумды біріктіру үшін JFusion орнату

    Алдымен сізге JFusion және оның орысша нұсқасын жүктеп алу керек. Joomla басқару тақтасына кіргеннен кейін біз стандартты әрекеттерді орындаймыз: басқару тақтасының жоғарғы мәзірінен «Кеңейтімдер» - «Орнату/Жою» - «Бума файлын жүктеп алу» тармақтарын таңдаңыз - «Шолу» түймесі - файлды табыңыз. Компьютерде jfusion_package.zip компоненті - « Файлды жүктеп салу және орнату >» түймесін басыңыз.

    Осыдан кейін компонент сәтті орнатылғаны туралы хабарлайтын терезе пайда болады. Мәселелер туындаса, олардың кейбіреулерінің шешімдерімен жоғарыда келтірілген сілтеме бойынша танысуға болады.

    Енді компоненттің өзі сияқты қосылатын орыстандыру уақыты келді. Анау. әрекеттер тізбегін қайталаңыз: «Кеңейтімдер» - «Орнату/Жою» - «Бума файлын жүктеп алу» - «Шолу» түймесі - компьютерде JFusion Russification файлын табыңыз - «Файлды жүктеп алу және орнату» түймесін басыңыз. Енді біз «Компоненттер» - «JFusion» жолындағы параметрлерге өтіп, орыстандыру сәтті қосылғанына және жұмыс істеп тұрғанына көз жеткізе аламыз.

    Сізге сәттілік! Жақында блог сайтының беттерінде кездескенше

    Сізді қызықтыруы мүмкін

    SMF форумы мен Joomla сайтын біріктіру үшін JFusion орнату
    JFusion модульдері форумдағы хабарламаларды веб-сайтта көрсетуге, сондай-ақ Joomla-ға оралу үшін SMF-те түймені жасауға арналған.
    Форумға кіру үшін Joomla-да мәзір элементін жасау және пайдаланушы тіркеуін SMF-ден сайтқа тасымалдау
    SMF форумын орнату - JFusion компонентін пайдаланып Joomla 1.5 және Simple Machines форумын біріктіру
    Joomla үшін кеңейтімдер - бұл не және Joomla үшін компоненттерді, модульдерді және плагиндерді қайдан жүктеп алуға болады, оларды қалай орнатуға және жоюға болады
    Joomla-да блогтарды, каталогтарды және порталдарды құруға арналған K2 компоненті - мүмкіндіктер, орнату және орыстандыру Joomla фото галереясы - 3-бөлім - Phoca галереясы компонентін пайдаланып Joomla 1.5 жүйесінде галереялар жасау - санаттарды қосу және фото галереяға суреттерді жүктеп салу
    ARTIO JoomSEF - CNC (SEF) сілтемелерін және Joomla-дағы тақырыпты орнату, сонымен қатар осы кеңейтімді пайдаланып 404 қате бетін жасау
    Akeeba Backup (бұрынғы JoomlaPack) - Joomla сайтының сақтық көшірмесін жасау және сақтық көшірмеден екі рет басу арқылы қалпына келтіру

    көріністер