Odpowiedź forum utworzona

Viewing 15 replies - 1 through 15 (of 26 total)
  • Już doszedłem jak to zrobić. Trochę to zawikłane i wymaga zduplikowania czynności. Prosiłbym moderatora o skasowanie tematu.

    Forum: Wtyczki
    W odpowiedzi na: Alternatywa dla LOGIN LOCK

    Tak ale ja nie chce mieć formularza logowania na stronie, chcę zabezpieczyć przed botami formularz i nie chcę by była to captcha, której wręcz nie znoszę.

    Na obecną chwilę zainstalowałem „Limit Login Attempts”.
    Ma opcję powiadamiania i ustawienia czasu blokady.

    Oczywiście i tak najlepiej zablokować dostęp do logowania poprzez .htaccess. Zwłaszcza w sytuacji gdy obecnie jest dość dużo prób logowań na konto administratora poprzez login admin.
    Ja odnotowuję około 2 takich prób dziennie więc dużo tego nie jest.

    Forum: Zaawansowane
    W odpowiedzi na: Custom-Metabox repeatable

    Sam mechanizm znam, raczej chodzi o poprawne zapisanie do tablicy itd.
    Żeby odrobinę uprościć sobie życie wykorzystałem tą klasę

    WPAlchemy MetaBox: Install and Setup

    Dość banalnie się robi takie pola dzięki niej, w sposób elastyczny można dostosować wygląd itd. W miarę jest to wszystko pomyślane z sensem.

    Przyznam, że dość wygodne.

    Zawsze co do takich klas mam obawy, że przestaną być wspierane albo jakiś błąd w nich wysypie stronę i będą problemy 🙂

    Forum: Zaawansowane
    W odpowiedzi na: php jak pobrać lokalny czas

    Dzięki za odpowiedź.

    Na razie testuję lokalnie (Xampp), ale usiłując pobrać aktualny czas w obszarze WordPressa poprzez <?php echo (date('H i s',time())); ?> czas podawany jest o godzinę do tyłu, natomiast gdy to samo zrobiłem na gołym pliku PHP niezależnym od WordPressa czyli pobierając czas z serwera wszystko jest ok.

    Czyli to kwestia samego WordPressa bo Xampp jest dobrze ustawiony.

    Ale pomysł z +3600 w zasadzie rozwiązuje problem.

    Ok znalazłem problem. Już po fakcie napisania posta.

    W ramach wyjaśnienia.

    Problem polegał na tym, że w powyższym kodzie znajdują się space na zewnątrz znaczników <?php ?>

    Dlatego też dodawało je przy każdym zapisie.

    Tak oczywiście to zmieniłem na własną taxonomię.

    Z ifami mam problem gdyż nie wiem co za co odpowiada. Już się w całej pętli pogubiłem szukając właściwych rozwiązań.

    Może przedstawię na czym bazuję. Oto pętla, która w miarę poprawnie wyświetla całość nie licząc problemu z duplikatami u „rodziców”.
    Czyli rodzice wyświetlają wpisy, które powinny należeć wyłącznie do dzieci.

    <?php
        $post_type = 'pliki_ebooki';
        $tax = 'kategorieebooki_kategorie';
        $tax_terms = get_terms($tax);
    	//print_r ($tax_terms);	
    
        if ($tax_terms) {
        foreach ($tax_terms as $tax_term) {
        $args = array(
        'post_type' => $post_type,
        "$tax" => $tax_term->slug,
        'post_status' => 'publish',
        'orderby' => 'datetime',
        'order' => 'DESC',
        'posts_per_page' => -1,
        'caller_get_posts'=> 1,
    
    	'tax_query' => array(
        array(
            'taxonomy' => 'kategorieebooki_kategorie',
            'field' => 'slug',
            'terms' => $term,
        )
       )
        );
    
        $my_query = null;
        $my_query = new WP_Query($args);
    
        if( $my_query->have_posts() ) : ?>
        <h2 class="produktgrupp"><?php echo $tax_term->name; ?></h2>
    	<?php echo $tax_term->description; ?>
    
        <ul class="produktlistning">
        <?php while ( $my_query->have_posts() ) : $my_query->the_post(); ?>
        <li id="post-<?php the_ID(); ?>">
        <a href="<?php the_permalink(); ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>">
        <?php the_title(); ?>
        </a>
    	</li>
        <?php endwhile; // end of loop ?>
        </ul>
        <?php else : ?>
        <?php endif; // if have_posts()
        wp_reset_query();
        } // end foreach #tax_terms
        }
        ?>

    To jest tylko szkic. Przy takiej konstrukcji pętli wynik wygląda tak:

    *******************
    kategoria_główna1
    opis kategorii głównej1

    ebok-10
    jakiś plik 2
    jakiś plik 3
    plik w głównej kategorii

    -podkategoria1
    opis podkategorii1

    jakiś plik 3

    -podkategoria2
    opis podkategorii2

    ebok-10
    jakiś plik 2

    –pod-podkategoria1 będąca dzieckiem podkategorii 2
    opis pod-podkategorii1

    ebok-10
    *******************

    Czyli jak widzisz, pojawiają się duplikaty w kategorii nadrzędnej z podkategorii mimo, że każdy z wpisów jest przypisany do konkretnej jednej kategorii/podkategorii.

    W jaki sposób zatem dostosować tą funkcję do mojej pętli?
    Gdyż szczerze mówiąc próbowałem ale najwidoczniej mnie to przerasta albo już jestem wypalony brakiem progresu i nie potrafię się wystarczająco skoncentrować.

    Dzięki za odpowiedź.

    Niestety po dodaniu tej funkcji nie nastąpiły żadne widoczne zmiany.

    W moim przypadku sprawa dotyczy niestandardowych postów i niestandardowych kategorii(taksonomii kategorii). Być może dlatego nie wpłynęło to w żaden sposób na wyświetlanie kategorii i subkategorii.

    Czy nikt nie zna odpowiedzi? Siedzę nad tym już dośc długo i oczęta wychodzą mi z orbit.

    Upraszczając zapytanie.

    Chodzi mi o to, by w kategoriach niestandardowych Rodzic nie duplikował zawartości, która występuje w Dzieciach.

    Czyli w kategorii nadrzędnej pojawia się to co jest w podkategorii. przy mojej koncepcji projektu to bez sensu.

    Czyli jeśli dzieci mają jakieś wpisy, to pojawiają się one również u rodzica.

    Jak to zmienić?

    To może pociągnę tą kwestię dalej.

    Znalazłem rozwiązanie:

    http://snipplr.com/view/57998/

    Jednak problem polega na tym, że jeśli mamy główną kategorię i podkategorię, to wyświetlają się w kategorii głównej również pliki z podkategorii przypisanej do kategorii głównej.

    Jak temu zapobiec?

    Skoro posty przypisałem do danej podkategorii, nie chcę by wyświetlały się w kategorii głównej.

    Chcę by pliki przypisane do kategorii wyświetlały się pod kategorią główną, a pliki w podkategorii pod tą kategorią.

    W zasadzie chodzi o ten sam problem, który ma ten uzytkownik.
    http://wordpress.stackexchange.com/questions/59781/list-posts-for-terms-of-a-custom-taxonomy-for-any-post-type

    Problem rozwiązałem samodzielnie.
    Można temat skasować jako nie wnoszący nic dla ogółu.

    Chodzi mi o to że, chcę dodać pozycję Kategorie tam gdzie mamy listę artykułów.

    Przy klasycznych wpisach mamy tytuł, autor, kategoria tagi i data.

    Obecnie w Artykułach jest tylko tytuł i data. A chciałbym dodać autor (co już zrobiłem) i kategorie niestandardowe czyli osobną taksonomię artykuly_kategorie.

    Kolumny dodajemy lub modyfikujemy przez :

    add_filter('manage_edit-artykuly_columns', 'my_columns');
        function my_columns($columns) {
       	$columns = array(
    		"cb" => "<input type='checkbox' />",
    		"title" => "Tytuł",
    		"author" => "Autor",
    		"kategorie" => "Kategoria",
    		"date" => "Data"
    	);
    	return $columns;
        }
    	add_action("manage_posts_custom_column", "my_custom_columns");
    function my_custom_columns($column)
    {
    	global $post;
    	if ("ID" == $column) echo $post->ID;
    	elseif ("author" == $column) echo  __('Author');
    	//elseif ("kategorie" == $column) echo __('artykuly_kategorie');
    }

    Ale nie wiem w jaki sposób wyświetlić tam kategorie które są kategoriami niestandardowymi.

    Dzięki to już mam zrobione.
    A w jaki sposób dodać taksonomie kategorii jako kolumnę wraz z filtrem do stworzonego custom post type?
    Chodzi mi o to by prawie wszystko w tym nowym custom post type działało jak w zwykłych wpisach z tą różnicą, że bez komentarzy i bez tagów.

    Już wszystko gra, jeszcze raz dziękuję.
    Na dzisiaj już odpuszczam bo dostaję oczopląsów 🙂
    Ale kwestia mapy rozwiązana.

    Przerobiłem też sprawę javascript, dodałem go do zewnętrznego pliku .js
    a wymaganie zmienne php przekazałem poprzez wp_localize_script.

    Zostało mi w sumie tylko dodanie odpowiednich warunków. zaś w miejscu gdzie jest echo „dddddddd” umieszczę
    add_action( ‚template_redirect’, ‚zaladuj_googlemaps_js’ );
    I powinno być wszystko ok.

    update:

    ok poradziłem sobie, po prostu oba get_post_meta(i wrzuciłem do zmiennych.

    Dzięki serdeczne za pomoc i naprowadzenie.

    A może zastosować get_post_custom($post_id);
    ?

    $tests = get_post_custom($post_id);

    przekazać to w zmiennej, i w formularzu wywoływać poprzez

    echo ($tests[nazwapola][0]);
    echo ($tests[nazwainnegopola][0]);

    Wówczas musiałbym jedynie osobno tytuł przesłać drugim polem input.

    wydaje mi się że to ograniczyłoby ilość zapytań.

Viewing 15 replies - 1 through 15 (of 26 total)