Wsparcie » Zaawansowane » Tworzenie bazy na wordpress

  • Witam,
    Chcę stworzyć bazę danych na temat X (załóżmy, że to będzie np. spis płyt moje zespołu, którego oczywiście nie mam 😀 ) czyli
    grafika+opis+download

    Nie wiem teraz jak będzie najwygodniej to wykonać. Zastosować wordpress taxonomy czy może niestandardowy szablon wpisu + custom fields ?

    Ktoś stosował już to, ma jakieś doświadczenie coś doradzi?

Viewing 15 replies - 1 through 15 (of 32 total)
  • Właściwie to dobrze celujesz, ale ja osobiście mam taką zasadę, że najpierw staram się wykorzystać najprostsze byty WP tj. wpisy, kategorie, tagi, odnośniki, media i dopiero jak to nie wystarcza, to sięgam po resztę, dokładnie tak jak piszesz: własne typy pól, własne typy wpisów, taksonomie.

    A to dlatego, że WP bardzo dobrze wspiera zarówno templatki tj. category.php, tag.php i przede wszystkim wyszukiwanie. Chodzi mi teraz o to, że jak będziesz chciał mieć wyszukiwarkę, to korzystając z tych podstawowych „bytów” praktycznie niewiele albo nawet nic nie będziesz musiał modyfikować, bo tak jest przystosowany wordpressowy search. Z taksonomiami jest więcej zabawy pod tym względem.

    Thread Starter rwtryb

    (@rwtryb)

    plus z taxonomi jest taki, że nie popsuję sobie okienka „Nowy wpis” 300 rekoradami z bazy, którą chcę stworzyć

    Co masz na myśli pisząc „nie popsuję sobie okienka Nowy wpis”?

    Thread Starter rwtryb

    (@rwtryb)

    biorąc po uwagę, że mam przygotowanych już 250 wpisów do bazy, wklejenie ich jako zwykły post będzie trochę dziwne

    Możliwe, że w tym przypadku własne typy i taksonomie lepiej się sprawdzą. Ja właśnie piszę na mojego bloga artykuł o jednym z przykładów ich wykorzystania, jak opublikuję, to sobie będziesz mógł zobaczyć na konkretnym przykładzie gdzie do czego ja ich używam.

    Thread Starter rwtryb

    (@rwtryb)

    Dobra kolejny problem mam taxometrie o nazwie „motywy” i custom post o nazwie „motywy” mam stronę:
    http://negatywhd.pl/motywy/ – plik z którego jest to czytane to archive-motywy.php, ok działa.

    Taxometria dla wpisów „motywy” składa się z:
    wordpress
    -jednokolumnowe

    strona na, której powinienem dostać jako wynik wpisy z kategorii wordpress to adres:
    http://negatywhd.pl/motywy/wordpress/

    (sprawdziłem wtyczki domyślnie również tworzą ten adres, nie są to moje fantazje) ale nie działa 🙁

    sprawdziłem więc tutaj:
    http://codex.wordpress.org/Template_Hierarchy

    sprawdziłem dziesiątki różnych kombinacji i nic, proszę o pomoc

    A masz plik single-xxx.php, gdzie xxx jest nazwą Twojego typu wpisu? Na tym schemacie hierarchii jest to „jajko” z napisem single-posttype.php.

    Thread Starter rwtryb

    (@rwtryb)

    właśnie to mam, ale to tyczy się wpisu, a ja chcę wyrzuć wszystkie z danej kategorii (tak jakby) pojedynczym wpisem nie mam problemu 🙂

    OK. To w takim razie próbowałeś utworzyć pliki tak jak na tym schemacie w ścieżce is_tax()?

    Twój URL jest chyba nie taki. Zaraz to rozpiszę na przykładzie i mi dasz znasz, czy to tak u Ciebie jest ułożone.

    Napisz mi, czy ja dobrze zrozumiałam Twoje struktury:

    1. Twoje wpisy to motywy
    2. Dodanie nowego wpisu powoduje dodanie informacji o kolejnym motywie
    3. Wpis-motyw teoretycznie może składać się z przykładowych kolumn:
    tytuł | opis | cms

    i jeśli cms jest rodzajem kategorii motywu, to powinieneś mieć utworzoną taksonomię o nazwie cms

    4. Przykładowe wpisy będą wyglądać w kolumnach tak:

    blue | bardzo fajny motyw w odcieniach niebieskich | wordpress
    graffiti | to jest motyw off-topowy | wordpress
    bursztynowy | motyw kobiecy ale nie tylko | joomla

    5. Jeśli teraz chcesz wyświetlić:
    a) wszystkie motywy w kategorii wordpress, to końcówka URL-a powinna wyglądać tak:
    cms/wordpress
    b) wszystkie motywy w kategorii joomla, to URL powinien kończyć się na cms/joomla

    Thread Starter rwtryb

    (@rwtryb)

    Typ postu to motywy
    te typy postów posiadają Taxonomie o głównej nazwie motywy podzielone w środku na wordpress oraz inny cms

    Llink do wpisu wygląda tak: http://negatywhd.pl/motywy/test-2/
    Czy on nawet nie uwzględnia takiej opcji, że jest dodany do kategorii taxonomi o nazwie wordpress czyli coś popsułem.

    Mogę dodać Taxonomię do menu i wtedy tworzy on ścieżkę automatycznie taką:
    http://negatywhd.pl/motywy/wordpress/

    Dla przykładu, który opisałam, w pliku functions.php powinien się znaleźć taki kod:

    add_action('init', 'motyw_register');
    
    function motyw_register() {
    	$args = array(
        	'label' => __('Motywy'),
        	'singular_label' => __('Motyw'),
        	'public' => true,
        	'show_ui' => true,
        	'capability_type' => 'post',
        	'hierarchical' => false,
        	'rewrite' => true,
        	'supports' => array('title', 'editor', 'thumbnail'),
        	'taxonomies' => array('category', 'post_tag') //<- sprawdź, czy masz to
        );
    
    	register_post_type( 'motyw' , $args );
    }
    
    register_taxonomy("cms", array("motyw"), array("hierarchical" => true, "label" => "Rodzaj CMS-a", "singular_label" => "Rodzaj CMS-a", "rewrite" => true));

    Założenie kategorii wordpress lub joomla lub drupal itd. i przypisanie do niej wpisu odbędzie się już na poziomie panelu administracyjnego, czyli w functions.php nie o nich nie wspominamy.

    A, jeszcze taką rzecz sobie przypomniałam. W tym schemacie hierarchii szablonów, do którego zaglądasz (i słusznie!) wszystkie ścieżki ostatecznie prowadzą do index.php

    Oznacza to, że nawet jeśli nie stworzymy sobie żadnego dedykowanego szablonu (pliku php) do wyświetlania czegoś, to i tak zawsze powinniśmy zobaczyć jakąś stronę, bo wyświetlenie przejmie index.php, który ma podstawową pętlę. Czyli zawsze powinniśmy coś zobaczyć, ale innego niż strona błędu (czyli nie „Strona nie została znaleziona”), co najwyżej zawartość będzie niepełna (np. tylko sam tytuł wpisu albo pusta środkowa część).

    Jeśli tak nie jest, to być może wynika to ze zgrzytów z plikiem .htaccess, dlatego dobrą praktyką jest tymczasowe przełączenie w Ustawieniach Odnośników Bezpośrednich na opcję 1 (format domyślny) i sprawdzenie czy wówczas jest widoczny efekt. Jeśli tym razem wyświetlanie będzie OK, to oznacza, że problem jest z naszym plikiem .htaccess (może mieć na przykład złe uprawnienia ustawione).

Viewing 15 replies - 1 through 15 (of 32 total)
  • Temat ‘Tworzenie bazy na wordpress’ jest zamknięty na nowe odpowiedzi.