Odpowiedź forum utworzona

Viewing 11 replies - 1 through 11 (of 11 total)
  • Thread Starter wube

    (@wujek_bogdan)

    super, tego właśnie szukałem. dzięki.

    Thread Starter wube

    (@wujek_bogdan)

    Tak jak pisałem wyżej, chcę to sprawdzić podczas edycji postu, w panelu admina, a nie podczas wyświetlania postu.

    wube

    (@wujek_bogdan)

    Przykład, który podałem wyżej to bardzo uproszczona wersja. żeby był uniwersalny, wystarczy poprawić to co pominąłem ;), tzn do zmiennej „url” nie jest przypisana żadna wartość a powinien być przypisany adres klikanego odnośnika. przepraszam za błąd. pisałem na szybko.

    var url = $(this).attr(’href’)

    zobacz w źródło strony, którą podałem. w pliku functions.js masz nieco bardziej rozbudowany przykład (nawigacja oparta na #haszach, ładowanie overlay, ajaxowy loader).

    A czemu pomijać header i footer? bo to nadmiarowe dane, które i tak nie zostaną wyświetlone, ponieważ ajaxowe zapytanie w przykładzie powyżej pobiera tylko to co znajduje się wewnątrz elementu .page-content strony źródłowej. Więc niepotrzebnie pobieralibyśmy o wiele więcej danych niż chcemy wyświetlić. Oczywiście będzie działać, ale czas ładowania strony nieco się wydłuży. Krótko mówiąc – nieoptymalnie.

    wube

    (@wujek_bogdan)

    Mówiąc podstrony masz na myśli rzeczywiście podstrony (czyli strony, które mają rodzica), czy po prostu strony?

    Jeśli ta pierwsza opcja to w page.php potrzebujesz dodać powyższy kod w warunku:

    <?php global $post; ?>
    <?php if ( is_page() && $post->post_parent ): // sprawdzamy czy wyświetlamy stronę i czy strona ma rodzica, jeśli ma to znaczy że jest podstroną ?>
    <?php get_sidebar(); ?>
    <?php endif; ?>

    A jeśli mówisz o każdej stronie, która nie jest stroną główną to po prostu do szablonu strony (czyli page.php, albo single.php, zależy od motywu) dodajesz:

    <?php get_sidebar() ?>

    Być może w twoim motywie już są jakieś warunki, dzięki którym sidebar wyświetla się tylko na głównej, trzeba do sprawdzić. Zajrzyj do pliku sidebar.php

    Jeśli nie wiesz jaki plik służy do wyświetlania danej strony to zapoznaj się z Opisem hierarchii szablonów

    wube

    (@wujek_bogdan)

    chcesz to zrobić bez przeładowania strony? jeśli tak to musisz treści ładować ajaxowo. Dla stron, które będziesz ładować ajaxem najlepiej przygotować własny template, tzn taki, który zawiera tylko content (bez headera i footera, samą treść wpisu) – nie jest to konieczne, ale zalecane.

    Tworzysz np. taki template:

    <?php if (have_posts()) : while (have_posts()) : the_post(); ?>

    <div class=”page-content”>
    <article class=”post” id=”post-<?php the_ID(); ?>”>

    <h1 class=”pagetitle”><?php the_title() ?></h1>
    <div class=”entry”>
    <?php the_content(); ?>
    </div>

    </article>
    </div>

    <?php endwhile; endif; ?>

    Ze strony WordPressa nie wymaga to żadnych sztuczek, cała sprawa rozbija się o utworzenie w javascriptcie zapytania do odpowiedniej strony i wyświetlenia tej strony w odpowiednim miejscu.

    Ja to robię tak, że po kliknięciu w dany odnośnik, pobieram jego atrybut „href”, blokuję domyślne zachowanie (czyli przejście pod podany adres) i pobieram z tego adresu zawartość, a następnie wrzucam w odpowiedniego diva.

    Wygląda to mniej więcej tak:

    $(„nav a”).on(„click”, function(e) { // klikany element
    e.preventDefault(); // anulujemy domyślną akcję
    url = url + ” .page-content”; // adres url do którego kierujemy zapytanie
    var container = $(’#container’); // element do którego wrzucamy treść
    container.load(url, function() {// ajaxowe wczytywanie treści w conainer
    // callback, który wykona się po załadowaniu treści
    })

    return false;
    }

    });

    To taki przykład na szybko, nie testowałem, bo kopiowałem z nieco bardziej skomplikowanego skryptu, ale ogólna zasada jest taka.

    Jak masz ochotę zobaczyć źródło to tutaj jest bardzo proste wdrożenie czegoś takiego: http://warsztatjezykowy.pl/

    wube

    (@wujek_bogdan)

    rozumiem, że każdy z boxów ma wyświetlać 1 nius z danej kategorii. dla każdego musisz więc zrobić własne zapytanie query_posts(), coś takiego:

    query_posts( array ( 'category_name’ => 'nazwa-kagetorii’, 'posts_per_page’ => 1 ) );

    A następnie dla każdego boksu w pętli, wyświetlić wynik tego zapytania. nie zapomnij po każdym loopie zrobić wp_reset_query().

    Szukaj w googlu pod hasłem „query posts by category”, znajdziesz mnóstwo przykładów.

    Forum: Wtyczki
    W odpowiedzi na: Masowe tworzenie stron
    wube

    (@wujek_bogdan)

    Ja używam Better lorem posts

    Forum: Zaawansowane
    W odpowiedzi na: Tagi w formie zdjęć
    wube

    (@wujek_bogdan)

    Użyj wtyczki, którą możesz przypisać do danej kategorii obrazek. Ja używam do tego własnych pól, polecam wtyczkę Advanced Custom Fields. Dzięki niej do dowolnego typu wpisu, do dowolnej kategori, itd możesz przypisać nie tylko obrazek, ale również wiele innych typów pól: pola tekstowe, selecty, edytor wysiwyg, pole uploadu pliku, itd.

    ACF o ile mi wiadomo współpracuje z WP e-commerce.

    Forum: Wtyczki
    W odpowiedzi na: Serwis w dwóch językach
    wube

    (@wujek_bogdan)

    podłączam się do pytania, mam identyczne wymagania i właśnie miałem zakładać taki sam temat 😉

    Wszystko to co potrzebuję ma wtyczka http://wpml.org/, ale niestety od jakiegoś czasu nie jest darmowa. Nie potrzebuję tak rozbudowanego kombajnu, wystarczy to o czym pisze wyżej maly_pirat

    //edit:
    zastanawiam się nad qTranslate. Co o tym sądzicie? Nie będzie problemów ze statycznymi linkami?

    Thread Starter wube

    (@wujek_bogdan)

    Jeśli będzie się nadawało do publikacji to czemu nie. Ale raczej nie zamierzam pisać kompletnej wtyczki dla WP, za słaby jestem z PHP.

    Na razie mogę podzielić się sliderem dla zdjęć. Wtyczka nie jest dopracowana tak jakbym chciał, ale raczej działa: http://serwisamano.pl/ferie/lib/simplSlider.js

    //edit:
    a wracając do tematu, to jest może jakaś inna wtyczka, która pozwoli mi zrobić to samo? wystarczy mi, tak jak pisałem wyżej coś o dużo bardziej ograniczonej funkcjonalności.

    Problem można uznać za rozwiązany, pytam z czystej ciekawości.

    //edit:
    zadowalający efekt osiągnąłem wyłączając skrypty w:
    Gallery>options>JavaScript Thumbnail effect > none
    oraz wyłączając:
    Gallery > options > Gallery > The gallery will open the ImageBrowser instead the effect.

    Mam zwykłą listę miniaturek i linki prowadzące do obrazków w pełnym rozmiarze, bez zbędnych śmieci i skryptów.

    Thread Starter wube

    (@wujek_bogdan)

    Dzięki za rady.

    Tematu jeszcze nie oznaczam jako rozwiązany, najpierw przeczytam artykuły, ale myślę że to mi wystarczy.

    //Edit:
    NextGEN Gallery, tego właśnie szukałem. Trochę mnie wkurza, że automatycznie tworzy cały interfejs do galerii, szkoda że nie da się tego wyłączyć w opcjach, można jedynie zredukować do minimum. Nie obraziłbym się gdyby po prostu wrzucał zdjęcia jedno pod drugim… no ale rozumiem, że nie taka była idea NextGEN 😉

    Pogrzebię trochę w kodzie wtyczki, pewnie coś się da z tym zrobić. BTW, szkoda że wordpress nie korzysta domyślnie z szablonów SMARTY, trochę mnie to dziwi.

Viewing 11 replies - 1 through 11 (of 11 total)