Skocz do zawartości


C47

Rejestracja: 14 maj 2015
OFFLINE Ostatnio: 20 02 2016 13:44
-----

#268476 Duże i małe litery w adresach url forum IPB

Napisane przez makensis w 24 01 2013 - 16:43

IPB 3.4.2 już po testach. System się sprawdza i sam akceptuje polskie znaki w adresach WWW, oczywiście jeśli chcemy mieć duże i małe litery w odnośnikach to wykonujemy poniższą instrukcję:

Zmiana linków IPB 3.4.X na takie, które zawierają duże i małe litery w forum IPB (Uppercase letters in friendly url addresses(FURL) of forums IPB)

Wyjaśnienia: IPB 3.4 posiada już przygotowaną do obsługi polskich znaków narodowych funkcje MakeSEOtitle(), jednakże nadal ma ona problem z dużymi literami i je zamienia na małe. Utrudnia to czytelność tekstu, tym bardziej, że odnośniki są na równi traktowane jak tekst description czy title. Poniższa porada pozwoli dostosować wygląd odnośników, czyli parsowanie dużych i małych liter w najnowszym dziele IPS :)

Wymagania:

  • IPB 3.4.X (wystarczy zmiana z pominięciem 4-6 punktu)
  • kodowanie znaków forum: UTF-8

Efekt:

pre_1343403043__polskie_znaki_forum_ipb.

Do dzieła!!


I krok:

  • Przejdź do lokalizacji: /admin/source/base/ i edytuj plik: core.php
  • Znajdź funkcję: makeSeoTitle( $text ) i podmień zawartość funkcji na:

    //rewrited by Makensis SEO v. 2.2.2
    static public function makeSeoTitle( $text )
        {
            if ( ! $text )
            {
                return '';
            }
    
            /* Strip all HTML tags first */
            $text = strip_tags($text);
            
            /* Remove specific hex characters (/,<,>,#) as it confuses redirect engine */
            $text = preg_replace( '#%(2f|3c|3e|23)#i', '', $text );
            
            /* Preserve other %data */
            $text = preg_replace('#%([a-fA-F0-9][a-fA-F0-9])#', '-xx-$1-xx-', $text);
            $text = str_replace( array( '%', '`' ), '', $text);
            $text = preg_replace('#-xx-([a-fA-F0-9][a-fA-F0-9])-xx-#', '%$1', $text);
    
            /* Convert accented chars */
            if ( IPS_DOC_CHAR_SET != 'UTF-8' )
            {
                /* http://community.invisionpower.com/resources/bugs.html/_/ip-board/i-broke-furls-urls-with-accents-r41236 */
                /* AJAX requests have HTML entities, so convert to accents then romanize */
                if ( strstr( $text, '&#' ) )
                {
                    $text = html_entity_decode( $text, ENT_NOQUOTES, 'UTF-8' );
                }
                
                $text = self::convertAccents($text);
            }
            
            /* Convert it */
            if ( self::isUTF8( $text )  )
            {
                
    
                $text = self::utf8Encode( $text, 250 );
            }
    
            /* Finish off */
            
            
            if ( strtolower( IPS_DOC_CHAR_SET ) == 'utf-8' )
            {
                $text = preg_replace( '#&.+?;#'	    , '', $text );
                
            }
            else
            {
                $text = str_replace( array( '&quot;', '&amp;'), '', $text );
                $text = preg_replace( '#\&[\#a-z0-9]{2,6};#i', '', $text );
                $text = preg_replace( '#[^%&\#;a-z0-9 _-]#', '', $text );
            }
            
            $text = str_replace( array( '`', ' ', '+', '.', '?', '_', '#', '&' ), '-', $text );
            $text = preg_replace( "#-{2,}#", '-', $text );
            $text = trim($text, '-');
            
            IPSDebug::addMessage( "<span style='color:red'>makeSeoTitle ($text) called</span>" );
            
            return ( $text ) ? $text : '-';
    }
    
  • Zapisz zmiany w pliku. Funkcję można oczywiście zooptymalizować we własnym zakresie.
  • Przejdź do lokalizacji: admin/sources/classes/output i edytuj plik publicOutput.php
  • Usuń:

    if ( strstr( $_toTest, '%' ) ) { /* Lowercase it as some browsers send %E2 but it will be stored as %e2 */ $_toTest = strtolower( $_toTest ); }
  • W wersji IPB 3.4.9 usuń:

    	if ( strstr( $_toTest, '%' ) )
    		{
    			/* Lowercase it as some browsers send %E2 but it will be stored as %e2 */
    			$_toTest = strtolower( $_toTest );
    		}
    
  • Zapisz zmiany w pliku

  • 2


#297488 Forum IPB zgodne z urządzaniami przenośnymi(update Google Algorytm)

Napisane przez makensis w 08 06 2015 - 12:09

Kilka tygodni temu pojawiła się najnowsza wersja forum IPB 3.4., która została przez IPS uznana za ostateczną(3.4.8) i tym samym zamyka to dalsze wspieranie skryptu. Niestety pomimo swojej świeżości nie rozwiązuje ona palącego problemu braku zgodności skryptu IPB z urządzeniami mobilnymi według Google. Na pierwszy rzut oka forum wygląda dobrze na ekranach naszych smartfonów, ale googlebot widzi je jak.. użytkownik komputera stacjonarnego. Co za tym idzie według aktualizacji algorytmu - strona nieprzystosowana do urządzeń mobilnych zostaje umieszczona niżej w rankingu niż konkurencyjne witryny wspierające urządzenia mobilne. Testy można wykonać w prosty sposób - wystarczy wpisać frazę na którą pozycjonujemy nasze forum na PC oraz komórce i sprawdzić naszą pozycję.

Czy jest to niekorzystne dla naszej witryny? Łatwo oszacować przy pomocy narzędzia Google Analytics. Przykładowe wyniki:

 

pre_1433756982__kategoria_urzadzen_googl

 

Dlatego zachęcam wszystkich do wykonania niezbędnych zmian w skrypcie, aby skorzystać z przywilejów najnowszej aktualizacji rankingu Google.

 

IPB przyjazne urządzeniom mobilnym PORADNIK

 

  1. Sprawdzamy czy nasze forum jest zgodne z wytycznymi Google na stronie: Test zgodności z urządzeniami przenośnymi.

    /uploads/imgs/pre_1433757343__ipb_test_zgodnosci_z_urzadzeniami_przenosnymi_google.jpg

    Pozytywny komunikat może wystąpić wyłącznie na forach z zainstalowanym dodatkiem Tapatalk i tylko w niektórych wersjach! Aktualizacja do najnowszej wersji Tapatalk powoduje pojawienie się komunikatu o błędach ponownie..
     
  2. Wchodzimy do ACP i z listy po lewej stronie wybieramy: Narzędzia -> Zarządzanie klientami użytkownika -> Dodaj nowego klienta
  3. Wypełniamy pola jak na obrazku:

    pre_1433757554__googlebot_mobile_klient_

    I zapisujemy zmiany.
  4. Uruchamiamy ponownie test z punktu 1. W większości wypadków spowoduje to błąd, dlatego polecam wykonanie dalszych kroków instrukcji..
  5. Przechodzimy do pozycji w menu Narzędzia: Pamięć podręczna, a następnie: Aktualizuj całą pamięć.
  6. Po wykonaniu powyższej czynności uruchamiamy ponownie test z punktu 1. Jeśli to nie pomoże to ostatnim krokiem jest punkt 7. Podobno w wersji forum IPB 3.4.7-8 nie trzeba instalować tego dodatku, ale nie miałem okazji sprawdzić tego w praktyce.
  7. Wchodzimy na stronę IPS i ściągamy na dysk rozszerzenie: Google Mobile Friendly Website
  8. Instalujemy rozszerzenie z pozycji menu: Aplikacje i moduły -> Rozszerzenia i +Instalacja

    pre_1433758081__xml_instalacja_dodatku_i
     
  9. Ponownie sprawdzamy zgodność naszej witryny z wytycznymi(z punktu 1). Efekt powinien być taki:

    pre_1433758136__strona_przystosowana_do_

  • 2


#300395 Dziwadła w templatce IPB czyli czego warto unikać..

Napisane przez makensis w 09 10 2015 - 15:39

Nic się nie zmieniło w theme w wersji 3.4.8.


  • 1


#283987 forum IPB SEO Optymalizacja Przewodnik

Napisane przez makensis w 20 12 2013 - 14:20

Poradnik wersja FAST & QUICK - Przyjazne linki IPB 3.4.6. optymalizacja SEF

Czas: 3 minuty.

Efekt: po miesiącu.

 

Wersja skrócona poradnika, która ogranicza się tylko do poprawy wyglądu linków na forum w wersji 3.4.6. Po jej wykonaniu można się pokusić o dalsze zmiany w kodzie witryny oraz wygląd skórki forum(poprzednie posty w temacie, począwszy od 2-go).


 

W IPB 3.4.6. dokonano kilka kosmetycznych zmian, między innymi uporządkowano "nadmiar kodu" odpowiedzialnego za przekierowania. Wszystkim użytkownikom najnowszej wersji proponuję taką aktualizację plików:

 

W lokalizacji: admin/applications/forums/extensions/ i plik furlTemplates.php

Zastąp domyślną tablicę poniższym kodem:

 //optymalizacja SEO by Makensis dla Tweaks.pl v.3.0 dla IPB 3.4.6
$_SEOTEMPLATES = array(
    
    'showannouncement'     => array( 'app'             => 'forums',
                                     'allowRedirect' => 1,
                                     'out'           => array( '#showannouncement=(.+?)((?:&|&amp;)f=(.+?))?(&|$)#i', 'forum-$3/announcement-$1-#{__title__}/$4' ),
                                       'in'            => array( 'regex'   => '#/forum-(\d+?)?/announcement-(\d+?)-#i',
                                                                'matches' => array( array( 'showannouncement', '$2' ), array( 'f', '$1' ) ) ) ),
                                                    
    'showforum'     => array( 'app'              => 'forums',
                              'allowRedirect' => 1,
                              'isPagesMode'   => 1,
                              'out'           => array( '#showforum=(.+?)(&|$)#i', '#{__title__}-f$1/$2' ),
                              'in'            => array( 'regex'   => '#-f(\d+?)\/#i',
                                                        'matches' => array( array( 'showforum', '$1' ) ) ) ),


    'showtopic'     => array( 'app'              => 'forums',
                              'allowRedirect' => 1,
                              'isPagesMode'   => 1,
                              'out'           => array( '#showtopic=(.+?)(&|$)#i', '#{__title__}-t$1/$2' ),
                              'in'            => array( 'regex'   => '#-t(\d+?)\/#i',
                                                        'matches' => array( array( 'showtopic', '$1' ) ) ) ),

    'acteqst'       => array( 'app'              => 'forums',
                              'allowRedirect' => 1,
                              'out'           => array( '#act=ST(.*?)&t=(.+?)(&|$)#i', 'topic/$2-#{__title__}/$3' ),
                              'in'            => array( 'regex'   => '#^notavalidrequest$#i',
                                                        'matches' => array( array( 'showtopic', '0' ) ) ) ),
                            
    'act=idx'       => array( 'app'              => 'forums',
                              'allowRedirect' => 0,
                              'out'           => array( '#act=idx(&|$)#i', 'index$1' ),
                              'in'            => array( 'regex'   => '#^/index(/|$|\?)#i',
                                                        'matches' => array( array( 'act', 'idx' ) ) ) ),

W lokalizacji: admin/applications/users/extensions/ i plik furlTemplates.php

Podmień tylko showuser - tabelę:

//optymalizacja SEO by Makensis dla Tweaks.pl v.3.0  dla IPB 3.4.6
'showuser' => array( 'app' => 'members',
'allowRedirect' => 1,
'out' => array( '#showuser=(.+?)((?:&|&amp;)f=(.+?))?(&|$)#i', '#{__title__}-m$1/$2$4' ),
'in' => array( 'regex' => "#-m(\d+?)\/#i",
'matches' => array( array( 'showuser', '$1' ) ) ) ),

W lokalizacji: admin/applications/core/extensions/ i plik furlTemplates.php

Podmień tylko  tags - tabelę:

 

Bez modułu Galeria(odpłatny moduł):


//optymalizacja SEO by Makensis dla Tweaks.pl v.3.0 dla IPB 3.4.6 
'tags' => array( 'app'      => 'core',
'isPagesMode'   => true,
'allowRedirect' => 0,
'out'         => array( '#app=core(&amp;|&)module=search(&amp;|&)do=search(&amp;|&)search_tags=(\S+?)(&amp;|&)search_app=forums(&amp;|&|$)#i', 'czytaj-$4/' ),
     'in'         => array( 'regex' => "#/czytaj-(\S+?)/#i",
         'matches' => array( array( 'app', 'core' ), array( 'module', 'search' ), array( 'do', 'search' ), array( 'search_tags', '$1' ), array( 'search_app', 'forums' ) ) ) ),

W wersji z Galerią:

                //optymalizacja SEO by Makensis dla Tweaks.pl v.3.0.1 dla IPB 3.4.6    wersja z modem Galeria        
'tags'               => array( 'app'             => 'core',
                             'isPagesMode'   => true,
                             'allowRedirect' => 0,
                             'out'           => array( '#app=core(&amp;|&)module=search(&amp;|&)do=search(&amp;|&)search_tags=(\S+?)(&amp;|&)search_app=(\S+?)(&amp;|&|$)#i', 'czytaj-$4-$6/' ),
                             'in'            => array( 'regex' => "#/czytaj-(\S+?)-(\S+?)/#i",
                                                       'matches' => array( array( 'app', 'core' ), array( 'module', 'search' ), array( 'do', 'search' ), array( 'search_tags', '$1' ), array( 'search_app', '$2' ) ) ) ),

W lokalizacji: admin/applications/forum/modules_public/forums i otwórz plik topics.php

Znajdź #entry i zamień na &#entry - wartość powinna się pojawić 3-krotnie w pliku! W przeciwnym razie będziesz otrzymywał nieprawidłowe przekierowania z głównej strony WWW.

 

Po wykonaniu wszystkich czynności logujemy się do panelu administracyjnego i wykonujemy przebudowę pamięci FURL. Odpowiedni komunikat pojawi się na stronie głównej i wystarczy kliknąć na niego, aby zmiany się zapisały.

 

Jeśli czytasz ten poradnik pierwszy raz to nie zapomnij uzupełnić plik .htaccess o przyjazne przekierowania. W przeciwnym wypadku stracisz ruch ze starych tematów i działów forum!


  • 1


#298685 forum IPB SEO Optymalizacja Przewodnik

Napisane przez makensis w 27 07 2015 - 09:46

Niestety tagi są najgorzej wykonane ze strony IPS, monitowałem to kilkakrotnie bezskutecznie. Zostały stworzone na siłę wykorzystując silnik wyszukiwarki.


  • 1


#299067 forum IPB SEO Optymalizacja Przewodnik

Napisane przez makensis w 13 08 2015 - 08:03

Nic nie zmieniasz - czy w subdomenie czy w katalogu, mój poradnik działa tak samo.


  • 1


#296845 forum IPB przejście z domyślnego SEO i FURL na SEO by Makensis

Napisane przez makensis w 15 05 2015 - 16:08

Zła kolejność, wskazane polecenia dodaj po komendzie: RewriteBase /


  • 1


#267564 forum IPB przejście z domyślnego SEO i FURL na SEO by Makensis

Napisane przez makensis w 18 01 2013 - 16:54

W tym artykule przedstawię jak przejść z:

  • domyślnego SEO w wykonaniu piaskownicy IPS,
  • Minerva SEO,
  • FURL,
  • CommunitySEO,
  • SEO by Makensis v.1 (dotyczy starych forów)

na najnowszy produkt SEO by Makensis v2 bez utraty ruchu na forum z tytułu nieaktualnych odnośników.

Otrzymamy efekt Redirect 301 - moved pernamently co jest dla Google informacją o przeniesieniu treści, a użytkownik nawet nie zauważy, że adresy odnośników się zmieniły.

pre_1358520072__seo_ipb_aktualizacja_fur

pre_1358520248__seo_ipb_aktualizacja_fur

Wpis działa z:

  • tematami
  • forami
  • użytkownikami
  • tagami

Cała instrukcja zajmuje 1 minutę, zapraszam do artykułu:

  • Otwórz plik .htaccess w lokalizacji głównego folderu twojego forum
  • Dodaj polecenia:
    [hide]
    RewriteRule ^topic/([0-9]*)-([^/]*)/([^page-].*) $2-t$1/?$3 [R=301,L]
    RewriteRule ^forum/([0-9]*)-([^/]*)/(.*) $2-f$1/ [R=301,L]
    RewriteRule user/([0-9]*)-([^/]*)/(.*) $2-m$1/$3 [R=301,L]
    RewriteRule ^tags/forums/(.*) czytaj-$1 [R=301,L]
    RewriteRule (.*)-t(.*).html $1-t$2/ [R=301,L]
    RewriteRule (.*)-f(.*).html $1-f$2/ [R=301,L]
    [/hide]
  • Zapisz zmiany! Pamiętaj, że RewriteRule ^tags/forums.. dodajemy tylko, gdy wykonaliśmy instrukcję: przyjazne SEO TAGI na IPB (część 4 optymalizacji, najnowsza)

Błędy zanotowane: problem w IPB 3.4 z podstronami - od nowa trzeba zaksięgować(czytaj: co się zmieniło w kolejnych wersjach IPB pod względem SEO).


  • 2