Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 33 Pomógł: 0 Dołączył: 31.10.2007 Ostrzeżenie: (0%)
|
Na polskim forum Wordpress'a już o to się pytałem, ale wygląda na to, że mi tam nie pomogą. Cytat:
Cytat Wiem, że jest dużo informacji na temat integracji, ale żadna nie pokazuje, jak zintegrować w taki sposób, jaki chcę. Schemat obrazuje, jak chciałbym to zintegrować:
![]() Patrząc na to, można pomyśleć, że najprościej jest zbudować własny szablon, tyle, że kłopotliwym elementem jest sidebar. Ma on się pojawiać tylko i wyłącznie na includowanych podstronach z blogiem i komentarzami. Wszystkie znane mi metody mają to do siebie, że niezależnie od tego, jaka to podstrona (statyczna strona, galeria, etc.), sidebar jest widoczny (tak to rozumiałem), a ja tego nie chcę. No bo na co komu to podczas przeglądania, na przykład, prac rysunkowych? Funkcje bloga, jakie są mi potrzebne, to możliwość postowania ( Dodatkowym utrudnieniem jest sposób, w jaki są ładowane strony. Utrudnieniem, bo jestem żółtodziobem w PHP. Div, który zawiera zmienną treść, ma kod: Kod <?php require_once './' . $pagesCat . '/' . $pages[$_GET['id']]['prefix'] . $_GET['id'] . '.html' . $_GET['post']; ?> Na samym początku index.php mam kod, który zajmuje się ww. zmiennymi: Kod <?php $lang = array(); $pagesCat = 'katalog/z_plikami_podstron_w_formacie_html'; $pages = array( 'strona1' => array('title' => 'strona1', 'prefix' => ''), 'strona2' => array('title' => 'strona2', 'prefix' => ''), (i tak dalej) ); if(!isset($_GET['id']) || !isset($pages[$_GET['id']])) { $_GET['id'] = 'strona1'; } ?> Dodatkowo używam mod_rewrite do skracania adresów. Zawartość pliku .htaccess Kod AddType application/x-httpd-php .html .htm .php RewriteEngine On Options +FollowSymlinks RewriteRule ^([0-9a-z-]+)$ index.php?id=$1 Podsumowując, nawigacja działa w ten sposób: http://adres/strona2 --(mod_rewrite)--> http://adres/index.php?id=strona2 --(GET['id']--> załaduj w divie z zmienną treścią plik strona2.html Mam nadzieję, że napisałem w sposób zrozumiały |
|
|
|
![]() |
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów |
Cytat Ma on się pojawiać tylko i wyłącznie na includowanych podstronach z blogiem i komentarzami. Nie mam teraz dostępu do źródeł Wordpressa, ale jeśli chodzi o Twój problem: http://codex.wordpress.org/Template_Hierarchy Popatrz, wg jakiej zasady są ładowane szablony. Index jest zawsze ładowany, gdy nie ma template'a odpowiedzialnego za obsługę notki. Wykorzystaj to, bo w tych głównych szablonach jest metoda get_sidebar(), która jest odpowiedzialna za jego załączanie. Jeśli chodzi o ładowanie stron takie, jak zrobiłeś, to jest IMHO zły pomysł; przy najbliższej aktualizacji Wordpressa index może zostać nadpisany uaktualnieniem i wtedy nieciekawie. Zaznaczam, że nie wiem, czy ostatnio wprowadzony moduł aktualizacyjny działa na zasadzie diffa, czy po prostu nadpisuje pliki. Tak, czy siak - zostaw w spokoju źródła WP i napisz odpowiednią wtyczkę. Przynajmniej tak zrozumiałem z tego, co napisałeś. -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 33 Pomógł: 0 Dołączył: 31.10.2007 Ostrzeżenie: (0%)
|
Nie mam teraz dostępu do źródeł Wordpressa, ale jeśli chodzi o Twój problem: http://codex.wordpress.org/Template_Hierarchy Popatrz, wg jakiej zasady są ładowane szablony. Index jest zawsze ładowany, gdy nie ma template'a odpowiedzialnego za obsługę notki. Wykorzystaj to, bo w tych głównych szablonach jest metoda get_sidebar(), która jest odpowiedzialna za jego załączanie. Jeśli chodzi o ładowanie stron takie, jak zrobiłeś, to jest IMHO zły pomysł; przy najbliższej aktualizacji Wordpressa index może zostać nadpisany uaktualnieniem i wtedy nieciekawie. Zaznaczam, że nie wiem, czy ostatnio wprowadzony moduł aktualizacyjny działa na zasadzie diffa, czy po prostu nadpisuje pliki. Tak, czy siak - zostaw w spokoju źródła WP i napisz odpowiednią wtyczkę. Przynajmniej tak zrozumiałem z tego, co napisałeś. Nie sądzę, żebym aktualizował. Przynajmniej nie tak często, bo chcę używać bloga do najbardziej podstawowych rzeczy - postowania, komentowania i segregowania komentarzy. Pisanie wtyczki to za wiele dla mnie, nie znam się na PHP Spróbowałem po prostu przerobić szablon graficzny i chyba jestem blisko. Wgrałem pliki bloga do katalogu /wordpress, po czym w ustawieniach wskazałem katalog root (o jeden wstecz, bo nie chciałem mieć tam bałaganu z plikami i folderami), a następnie skopiowałem index.php i poprawiłem w nim ścieżkę, żeby blog się nie pogubił. Teraz mam inny problem, którego nie mogę zrozumieć. Mogę załadować podstrony (np. z galerią) za pomocą /index.php?id=nazwapodstrony lub /?id=nazwapodstrony. W katalogu root mam .htaccess z taką zawartością Kod AddType application/x-httpd-php .html .htm .php RewriteEngine On Options +FollowSymlinks RewriteRule ^([a-z]+)$ index.php?id=$1 Jeśli wpiszę http://localhost/strona/galeria, to regułka tłumaczy na http:/localhost/strona/index.php?id=galeria, ale serwer twierdzi, że nie ma takiej strony (błąd 404). Natomiast jeśli wpiszę ręcznie adres z index.php, to już działa poprawnie. O co tu chodzi? W jaki sposób mogę zdiagnozować problem? Czy jest to możliwe, żeby Wordpress negował działanie mod_rewrite? |
|
|
|
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów |
Cytat Nie sądzę, żebym aktualizował. Przynajmniej nie tak często, bo chcę używać bloga do najbardziej podstawowych rzeczy - postowania, komentowania i segregowania komentarzy. Huh, wędrówka po cienkiej linii... Cytat Czy jest to możliwe, żeby Wordpress negował działanie mod_rewrite? Nie pisz żadnych regułek ręcznie, Wordpress ma odpowiednią opcję w panelu administracyjnym, zacznij najpierw od tego. -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 33 Pomógł: 0 Dołączył: 31.10.2007 Ostrzeżenie: (0%)
|
Nie pisz żadnych regułek ręcznie, Wordpress ma odpowiednią opcję w panelu administracyjnym, zacznij najpierw od tego. Permalinki? Jeśli tak, to ja nie mam pojęcia, w jako sposób to może pomóc, bo dotyczą one stron Wordpress'a, a nie spoza, takich jak te, które ja stworzyłem. W każdym razie, dalej pokombinowałem z ręcznymi wpisami i coś ruszyło dalej, choć nie osiągnąłem celu. W tej chwili regułka ma taką postać: Kod RewriteRule ^([a-z]+)/?$ index.php?id=$1 [L] I to przekierowuje, tylko przeglądarka (albo serwer, nie wiem) myśli, że wartość $1 to katalog, a nie podstrona. Na przykład, mam plik CSS w głównym katalogu. Po przekierowaniu przeglądarka sądzi, że taki plik ma ścieżkę http://adres_strony/wartość_$1/plik_CSS (a nie http://adres_strony/plik_CSS, jak powinno być). Efektem w tym przykładzie jest brak stylów dla danej podstrony. EDIT: Jakimś cudem udało mi się rozwiązać problem Kod <base href="http://adres_strony.com/"> W pełni tego nie rozumiem, ale chodzi o relatywne linki - takowe mam i odnosiły się do aktualnego adresu w pasku adresu przeglądarki, a nie głównego katalogu, co powodowało, że się gubiły. Jakoś tak Ten post edytował Tonic 16.12.2008, 02:30:17 |
|
|
|
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów |
Cytat Permalinki? Jeśli tak, to ja nie mam pojęcia, w jako sposób to może pomóc, bo dotyczą one stron Wordpress'a, a nie spoza, takich jak te, które ja stworzyłem. Tak, o to mi chodziło. Ale - nota bene - jaki masz problem wcisnąć swoje strony w szablon Wordpressa? Możesz przecież coś takiego zrobić, robisz tylko nowy <TEMPLATE> w katalogu szablonu (przy pisaniu strony/newsa dostajesz dodatkowe pole z wyborem szablonu). -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
|
![]() ![]() |
|
Aktualny czas: 20.08.2025 - 03:15 |