title: Opcje strony Zapisywanie, ale nie aktualizowanie w backendzie

text:
Stworzyłem niestandardową stronę opcji dla slidera, do której możesz przesyłać slajdy. Wszystko działa świetnie, z wyjątkiem próby zapisania danych. Zostanie zapisany i mogę go użyć na froncie. Ale ekran opcji nie zaktualizuje się, zrobi nawet flickr na ekranie (zakładam odświeżenie strony po wysłaniu formularza). Używam wtyczki jQuery o nazwie Apendo do klonowania slajdów w celu dodania wielokrotności, nie jestem pewien, czy to jest winowajcą. Jeśli strona jest odświeżana ręcznie, pojawia się właściwa treść, to takie dziwne! Jakieś pomysły, dlaczego tak się dzieje? Jest to obsługa tworzenia strony i globalna konfiguracja slajdów: global $slides; $slajdy = get_option('slajdy'); // Dodaj link do menu add_action('admin_menu', 'slider_menu_options'); function slider_menu_options() { // Sprawdź, czy formularz jest wysłany i zapisz tablicę if (isset($_POST['action'])) { $slides = array(); foreach($_POST['src'] as $k => $v) { $slides[] = array( 'src' => $v, 'link' => $_POST['link'][$k], ); } update_option('slajdy', $slides); } add_object_page('Suwak', 'Suwak', 'edit_themes', 'slider_settings', 'slider_options_page'); } A oto html obsługujący opcje: function slider_options_page() { global $slides; ?>

Menedżer suwaków
 <form id="manager_form" method="post">
 <?php foreach( $slides as $k => $slide) : ?>
 <input type="text" name="link[]" id="slide_link" value="<?php echo $slide[ 'link'] ?>"> <input type="text" name="src[]" class="logo_url" value="<?php echo $slide['src'] ?>"/> <input class= "upload_button" type="przycisk" class="przycisk" value="<?php _e( 'Wybierz slajd' ); ?>" />
 <img style="max-width:100 %;" src="<?php echo $slide['src'] ?>" />
 <button class="remove_slide button-secondary">Usuń ten slajd</button>
 <?php endforeach; ?>
 <input type="submit" value="Zapisz zmiany" id="manager_submit" class="button-primary"> <input type="hidden" name="action" value="save"> </form>
 <?php } A oto jQuery obsługujące wszystko: jQuery(document).ready(function($) { $('.upload_button').click(function() { targetfield = $( this).prev('.logo_url'); imgpreview = $(this).parent().find('img'); tb_show('', 'media-upload.php?type=image&TB_iframe=true'); okno .send_to_editor = function(html) { imgurl = $('img',html).attr('src'); jQuery(targetfield).val(imgurl);tb_remove();$(imgpreview).attr('src' , imgurl); $('#submit_options_form').trigger('click'); }; return false; }); // wywołuje appendo $('#manager_form_wrap').appendo({ allowDelete: false, copyHandlers: true, focusFirst: false, labelAdd: 'Ad d Nowy slajd', subSelect: 'li.slide:last' }); // przycisk usuwania slajdu $('#manager_form_wrap li.slide .remove_slide').live('click', function() { if($('#manager_form_wrap li.slide').size() == 1) { alert ('Przepraszamy, potrzebujesz co najmniej jednego slajdu'); } else { $(this).parent().slideUp(300, function() { $(this.remove(); }) } return false; }) ; // jQuery UI sortable $("#manager_form_wrap").sortable({ placeholder: 'slide-highlight' }); });


title: Nie można wyświetlić echa zmiennej JS do wtyczki jQuery pochodzącej z wp_localize_script

text: **Krótka wersja:** Mogę pobrać zmienną PHP do pliku JS za pomocą wp_localize_script. Na pliku JS mogę wywołać echo zmiennej za pomocą console.log, ale nie mogę uzyskać echa w opcjach wtyczki jQuery. **Długa wersja:** 1. Skrócony kod wtyczki. public function slider_shortcode($atts) { $data = shortcode_atts ( array( 'slideshow' => '', 'responsible' => '', ), $atts ); $slideshow_att = $dane['slideshow']; // DEBUGUJ -> TO DZIAŁA. Widzę na stronie wartość responsywności. print_r($data['responsywny']); ob_start(); $my_slider( $slideshow=$slideshow_att ); $my_slider_content = ob_get_clean(); wp_enqueue_script( $this->plugin_slug . '-public-script', plugins_url( 'assets/js/public.js', __FILE__ ), array( 'jquery' ), $this->wersja, TRUE); wp_localize_script( $this->plugin_slug . '-public-script', 'myScriptObject', $data); zwróć $my_slider_content; } 2. Plik WYJŚCIOWY JS. (function ($) { "use strict"; $(window).load(function () { var $resp = myScriptObject.responsive; // DEBUGOWANIE -> TO DZIAŁA. WIDZĘ WARTOŚĆ KRÓTKIEGO KODU. console.log($ odp); $('.my-slider').SuperSlider({ 'fullWidth': true, 'resptive': $resp, // <<-- TU JEST PROBLEM. NIGDY NIE ZMIENIA SIĘ. 'dimensions': '900,300' , }); }); }(jQuery)); 3. Krótki kod `[myslider responsive=true]` 4. Wartość _true_ jest wypisywana za pomocą `print_r($data['responsive'])`` i `console.log($resp)`. Ale z jakiegoś powodu `responsive: $resp` **nie zmieniaj!** Czego tu brakuje?


title: Załącznik obrazu Wordpress za pomocą zdalnego obrazu

text: Czy można użyć obrazu zdalnego jako załącznika wordpress? * Nie są przechowywane na naszym serwerze. A co z kodem/skryptem? Widzę, że załącznik działa jako post w bazie danych .. wydaje się, że jest to możliwe. _**UPDATE_** czego potrzebuję, to programowo dołączyć obraz ze zdalnego adresu URL, a ostatecznym celem jest to, że zdalny obraz może wyświetlać się jako szablon strony załącznika, tak jak przesłany obraz. czy to jest możliwe? Wszelkie sugestie byłyby bardzo mile widziane. Dziękuję.


title: Wynik wyszukiwania według zakresu?

text: Muszę szukać postów, które mają w tagach lub polach niestandardowych numer(cenę): przykład 152. Każdy post ma metkę z ceną. Jak wyszukać wszystkie posty powyżej ceny, na przykład muszę wyszukać wszystkie posty, których cena wynosi minimum 100. Coś w stylu /?s=keyword&price>=300 Thx


title: rób błędy w dzienniku wordpress w pliku dziennika Apache

text:
Muszę rejestrować błędy 404 i nieudane próby logowania wp na stronie Wordpress. Niestety natywnie obsługuje wszystko i nie zapisuje do pliku dziennika Apache. Próbowałem tego: 404.php <?php get_header(); ?>

<?php _e('Nie znaleziono strony', "podstawowy magazyn"); ?>

<?php _e('Nie można znaleźć żądanej strony.', "magazine-basic"); ?>

 <?php error_log("Plik nie istnieje: " .rtrim($ _SERVER['DOCUMENT_ROOT'], "/") . $_SERVER['REQUEST_URI'], 0); pobierz_stopkę(); ?> Functions.php // Loguj błędy logowania do dziennika błędów Apache add_action('wp_login_failed', 'log_wp_login_fail'); // przechwycenie funkcji logowania nie powiodło się log_wp_login_fail($nazwa_użytkownika) { error_log("Logowanie WP nie powiodło się dla nazwy użytkownika: $nazwa_użytkownika"); } Ale wydaje się, że to nie działa. Jakieś pomysły pomysły jak to zrobić?


title: WordPress SLOW, próbowałem wszystkiego!

text: Przeczytałem każde rozwiązanie wordpress i wypróbowałem je wszystkie (przynajmniej większość), ale NIE MOGĘ sprawić, by moja strona działała szybciej. Używam motywu kuponpress, który jest motywem listy kuponów, w którym użytkownicy mogą wystawiać różne oferty i kupony. Skończyłem dostosowywać, ale mam problem z prędkością! W stopce mojej witryny umieściłem funkcję licznika zapytań i czasu ładowania, a **witryna uruchamia 40-52 zapytań i ładuje się w ciągu 4-8 sekund (w zależności od strony)** , zbyt wiele zapytań i zbyt wolno dla wygody. Chciałbym zmniejszyć prędkość do co najmniej 2 sekund. Przyjrzałem się uruchamianym zapytaniom, a w szczególności jedno, "wp_schedule_event", generuje bardzo duże zapytanie, ale nie jestem pewien, jak je zmniejszyć lub wyeliminować. Szukałem jakichkolwiek odniesień do tej funkcji, ale nie wiem, co robić. Próbowałem różnych wtyczek i albo nie działają zgodnie z oczekiwaniami, albo powodują awarię mojej witryny. **Główne wtyczki, których próbowałem:** * W3 Total Cache (nie działa zgodnie z oczekiwaniami) * WP Super Cache (nie działa zgodnie z oczekiwaniami) * Autooptimize (awaria) * WP Minify (awaria) W3 Total Cache miał najlepsze wyniki, ale **Nie mogłem zrozumieć ustawień pamięci podręcznej, a niektóre moje zmiany w witrynie nie zostały zastosowane** , więc je dezaktywowałem. Wiem, że muszę wyczyścić pamięć podręczną, aby zmiany zaczęły obowiązywać, ale ponieważ użytkownicy mojej witryny zawsze będą dodawać nowe wykazy, nie wiem, czy ustawienia pamięci podręcznej pozwolą na prawidłowe wyświetlanie ich aukcji, czy w ogóle materiał. WP Super Cache początkowo nie powodował awarii mojej witryny, ale po zmianie niektórych ustawień nie zauważyłem żadnego wzrostu prędkości. Pozostałe dwa wydawały się obiecujące, ale z tego czy innego powodu spowodowały awarię mojej witryny. Prawdopodobnie są konflikty między wtyczkami i istniejącym kodem, ale nie mogę wskazać przyczyny. Używając firefoxa, uruchomiłem Firebuga i skorzystałem z konsoli sieciowej, aby zobaczyć, jakie procesy są uruchamiane na różnych stronach i **początkowe ładowanie do domeny zajmuje dużo czasu, średnio 7-9 sekund**. Większość tego czasu to „czekająca” część procesu. Poszukałem rozwiązań, które pozwolą skrócić ten czas oczekiwania, ale nie mogę zwiększyć prędkości. Naprawdę chcę przyspieszyć działanie mojej witryny i potrzebuję w tym dużej pomocy. Walczyłem przez ostatni tydzień próbując różnych opcji, ale wydaje się, że nic nie przyspiesza tego. Jeśli chcesz sprawdzić stronę **tutaj**, to jest. Wielkie dzięki, doceniam każdą radę w tej sprawie.


title: Wywołanie mysql_query() w innej bazie danych zakłada, że WordPress używa tej bazy danych

text: Próbuję zaimportować do WordPressa niektóre dane ze starszej witryny. Pierwszym krokiem są terminy dla taksonomii `kategoria_zdarzeń`. Oto moje podejście: $link = mysql_connect( 'localhost', 'blah', 'blah' ); // połącz się ze starą bazą danych $dkpl_db = mysql_select_db('dkpldump', $link); $event_categories = mysql_query('WYBIERZ * Z calendar_cats'); while($event_category = mysql_fetch_assoc($event_categories)){ //utwórz termin! $term = wp_insert_term( $event_category['categoryId'], 'event_category', array( 'slug' => $event_category['categoryName']) ); var_dump($termin); } W moim `var_dump` otrzymuję następujący błąd: WP_Error Object ( [errors] => Tablica ( [db_insert_error] => Tablica ( [0] => Nie można wstawić terminu do bazy danych )) [error_data] => Tablica ( [db_insert_error] => Tabela 'dkpldump.wp_terms' nie istnieje) ) Problem polega na tym, że `dkpldump` to baza danych, z której próbuję _odczytać_, a nie baza danych, na której jest zainstalowany WordPress (`dkpl`). Dlaczego więc próbuje pisać do bazy danych `dkpldump` i jak mogę to naprawić?


title: Recenzje klientów WP - skróty

text: **Wtyczka opinii klientów WP** Szukam **skrótów** do wyświetlania **tylko formularz recenzji** / **tylko recenzje**. Na stronie wtyczki jest informacja o shortcodzie ( _Skróty dostępne do wstawiania recenzji i formularza recenzji na dowolnej stronie lub widżecie_ ), ale nie mogę nigdzie znaleźć motywu. http://wordpress.org/extend/plugins/wp-customer-reviews/ Czy masz jakieś doświadczenia z wtyczką? Wszelkie sugestie są mile widziane.


title: Dodaj menu typu posta do innego menu

text: Stworzyłem stronę menu w desce rozdzielczej, następnie stworzyłem niestandardowy typ postu, a teraz chcę umieścić menu niestandardowego typu postu jako podmenu pod pierwszą utworzoną przeze mnie stroną menu. Próbowałem 'show_in_menu' => 'admin.php?page=mytestpage', jednak to nie zadziałało. Jakieś wskazówki?


title: Walidacja formularzy JS / JQuery w menu administratora zaplecza

text: Tworzę wtyczkę do zarządzania informacjami o kursie i staram się umieścić walidację formularzy w nowych meta polach, które dodałem. Czy ktoś ma dobry sposób na umieszczenie walidacji JS/JQuery w menu administratora? Dziękuję


title: Dodawanie edytora tekstu sformatowanego do fragmentu

text: Muszę dodać do pola fragmentu edytor TinyMCE Advanced, jakieś pomysły? Mam wtyczkę qTranslate (wielojęzyczna) i nie da się połączyć fragmentu z tą wtyczką i edytorem. Dziękuję


title: Problem z zapisywaniem wp_dropdown_pages()

text: Naprawdę mam nadzieję, że ktoś może mi tutaj pomóc, staram się dać administratorowi możliwość wybrania strony, do której ma linkować przycisk. Wybrałem za pomocą... wp_dropdown_pages($args) ... i tworzę argumenty za pomocą... $args = array( 'echo' => 1, 'selected' => $the_link, 'name' => 'opcja_motywu[link]'); ... i próbowałem zapisać wygenerowaną wartość $input['the_link'] = (int) $input['the_link']; ... ale jak dotąd bez powodzenia. Wybrana opcja jest resetowana po wysłaniu formularza i nie wygląda na to, że wartość jest w ogóle zapisywana. Czy ktoś ma jakieś rady?


title: Nie można pobrać tylko aktywnych członków

text:
Poniżej znajduje się szablon strony, w której próbuję pobrać metadane aktywnych członków (z Restrict Content Pro). Wyświetlanie meta użytkowników działa dobrze; ale nie mogę wyświetlić TYLKO aktywnych członków, a nie wszystkich. Zastanawiałem się, czy może w poniższej składni jest prosty błąd, który może to naprawić. Muszę sprawdzić, czy członek jest aktywny [to znaczy `if(rcp_is_active() )]`, gdzie wszyscy członkowie są również subskrybentami na stronie `[$members = get_users($args ); foreach ($członkowie jako $członkowie)]` . <?php /** * Ten plik dodaje szablon katalogu użytkownika do motywu Parallax Pro. * * @author StudioPress * @package Parallax * @subpackage Dostosowania */ /* Nazwa szablonu: Katalog */ add_action( 'genesis_entry_content', 'ogs_directory', 5 ); function ogs_directory() { $args = array( 'blog_id' => 1, // chyba że jest to instalacja wielostanowiskowa, nie powinieneś zmieniać tego 'exclude' => array(), // ID użytkowników, którzy potrzebują być wykluczonym 'orderby' => 'display_name' // Sortuj według 'ID', 'login', 'nicename', 'email', 'url', 'registered', 'display_name' lub 'post_count'; domyślnie 'Zaloguj sie'              ); $członkowie = get_users($args ); if( rcp_is_active() ) { foreach ($członkowie jako $członkowie) echo '
'; echo 'Nazwa: ' .esc_attr( $member->first_name ). '' ; echo ' ' .esc_attr( $member->last_name ). '
 ' ; if ( $member->rcp_address ) { echo 'Adres: ' .esc_attr( $member->rcp_address ). '
 ' ; } if ( $member->rcp_univ_1 ) { echo 'Uniwersytet: ' .esc_attr( $member->rcp_univ_1 ). '
 ' ; } echo '
'; } } //* Uruchom pętlę Genesis genesis();


title: Do_shortcode w pliku PHP poza motywem PRAWIE działa

text:
Niedawno włączyłem do mojej witryny Wordpress nowy interfejs, który naśladuje układ iGoogle. (Jeśli jesteś zainteresowany, można go znaleźć tutaj: Link i DEMO ) Wykorzystuje kilka widżetów do tworzenia układu, które są dodawane dynamicznie. Sposób edycji tych widżetów pochodzi z pliku o nazwie widgets_rpc.php. Chcę dodać kolejną wtyczkę, którą posiadam, która pozwala użytkownikom edytować tekst opakowany w krótki kod - [ce_sc did="1"][/ce_sc]. Kliknięcie jakiegoś tekstu w ten krótki kod umożliwia użytkownikom edycję tekstu, a także pokazuje przyciski „zapisz” „Przełącz edytor” pod tekstem. Po zakończeniu zmian użytkownik klika „zapisz”, aby zapisać. I przeczytaj o tym, jak umieszczać skróty na stronach PHP poza motywem wordpress, a skończyło się na tym dla pliku widgets_rpc.php: <?php require('../../mysite/wp-blog-header.php'); ?> <?php header("Cache-Control: no-cache"); header("Pragma: nocache"); $id=$_REQUEST["id"]; if ($id=="widget1") echo do_shortcode ("[ce_sc did='1']

[/ce_sc]"); if ($id=="widget2") echo do_shortcode('[ce_sc did="2"]

[/ce_sc]'); if ($id=="widget3") echo do_shortcode ("[ce_sc did='4']

[/ce_sc]"); Więc to faktycznie działa , prawie.Działa tak, jak zwykle robi krótki kod, umożliwiając użytkownikowi dodawanie tekstu, a nawet wyświetla przycisk „zapisz” „przełącz edytor” na dole obszaru tekstowego, b ut nic nie robi, gdy klikam te przyciski (jak zwykle, gdy robi się to za pomocą wordpress). Czy istnieje inna metoda, którą mogę wypróbować, aby uzyskać lepsze wyniki? A może brakuje mi kluczowego kroku w funkcji shortcode w php poza motywem? Dziękuję! PS. Ta strona jest na moim lokalnym komputerze i używa serwera server2go jako programisty, w przeciwnym razie dołączyłbym link.


title: Jak skompresować miniatury obrazów o dwóch różnych rozmiarach?

text: Jestem nowy w wordpressie i do tej pory mając ograniczoną wiedzę na temat PHP, byłem w stanie zbudować motyw od zera. Usunąłem kompresję dla moich zdjęć na stronie głównej, aby uzyskać lepszą jakość zdjęć. Teraz miniatury o bardzo małych rozmiarach po obu stronach panelu trendów są trochę za ciężkie i chciałbym je skompresować sam. Tak wygląda moja strona główna: (Wszystkie obrazy nie są domyślnie skompresowane) ![Home Page_Geekswipe](http://i.stack.imgur.com/fPvjT.png) Muszę skompresować `A` i `C` tylko. Nie wiem, jak to zrobić. Czy istnieje sposób skompresowania miniatur na podstawie wyświetlanego rozmiaru?


title: Problem z kolejnością elementów w responsywnym motywie P2

text: Rozwinąłem ten temat: http://p2.nmecdesign.com/ i oto mój obecny widelec: http://pattyayers.com/p2re2/ Jeśli wypróbujesz pierwszy, zobaczysz to w rozmiarze smartfona, szary pasek boczny rozwija się poniżej głównej sekcji treści. Mój motyw _był_ taki sam, ale kiedy pisałem CSS dla mojego rozwidlonego motywu, coś spowodowało, że _główna zawartość_ spadła poniżej _paska bocznego_, na szerokość smartfona, jak widać. Nie edytowałem plików motywów, z wyjątkiem zmiany kilku drobnych ciągów tekstowych front-end. Nie edytowałem functions.php. Zrobiłem wiele testów, aby spróbować to rozgryźć, ale jestem zbity z tropu.. każda pomoc bardzo ceniona.


title: Ukryj element menu panelu wtyczek dla określonych ról

text: Piszę wtyczkę i staram się wyświetlać tylko element menu pulpitu administratora do określonych ról. Do tej pory mam ten kontrolny fragment kodu... // Sprawdź rolę użytkownika global $current_user; if( !empty($current_user->roles) ){ foreach ($current_user->roles as $key => $value) { if( $value == 'administrator' ){ new myplugin_Wp_List_Table(); } } } Z jakiegoś powodu to nie działa, kiedy jestem zalogowany jako administrator, menu nie jest wyświetlane. Czy ktoś ma jakieś pomysły?


title: Wordpress dot com blog pełna kopia zapasowa

text: Jestem naprawdę sfrustrowany, gdy szukam metody na **tworzenie kopii zapasowej ** całej witryny WordPress**, w tym plików back-end ** z * _wordpress.com_ ***. Planuję przenieść całą witrynę na nowe konto hostingowe w godaddy, ale nie mogę jeszcze znaleźć rozwiązania, przeczytałem, że wordpress.com nie zapewnia nawet możliwości wgrania wtyczki i nie mam dostępu do plików zaplecza. .. Blog, który chcę zarchiwizować http://dogwalkdiary.wordpress.com/ Motyw, którego w nim użyłem **'Benevolence'** autorstwa _Theron Parlin_ Proszę o pomoc, jeśli ktoś wie, jak to zrobić... Z góry dziękuję


title: Jak uzyskać wiele pól wyboru w jednym metapolu?

text:
Potrafię wyświetlić jedno pole wyboru za pomocą niestandardowych pól produktów woocommerce. Muszę jednak pokazać wiele wartości z wielu pól wyboru w moim obszarze administracyjnym. Mam następujący kod: <input type="checkbox" name="mojaopcja[opcja_jeden]" value="1"<?php check(isset($options['option_one']) ); ?> /> <input type="pole wyboru" name="mojaopcja[dwa_opcja]" wartość="1"<?php sprawdzone( isset( $opcje['dwa_opcje']) ); ?> /> Jak mogę zapisać je w jednym metapolu? Podobny do pomysłu poniżej? $product_field_type = $_POST['product_field_type']; update_post_meta( $post_id, '_product_field_type_ids', $product_field_type ); **EDYTUJ** Ok, więc udało mi się zdefiniować niestandardowe pole na mojej stronie produktu. Ale moje pola wyboru nie przechowują! Czego mi tu brakuje? /* Zdefiniuj pole niestandardowe */ add_action( 'add_meta_boxes', 'wpse_61041_add_custom_box' ); /* Zrób coś z wprowadzonymi danymi */ add_action( 'save_post', 'wpse_61041_save_postdata' ); /* Dodaje pole do głównej kolumny na ekranach edycji postu i strony */ function wpse_61041_add_custom_box() { add_meta_box( 'wpse_61041_sectionid', 'title_color', 'wpse_61041_inner_custom_box', 'product', 'normal', 'high'); } /* Drukuje zawartość pudełka */ function wpse_61041_inner_custom_box($post) { // Użyj wartości jednorazowej do weryfikacji wp_nonce_field( 'wpse_61041_wpse_61041_field_nonce', 'wpse_61041_noncename' ); // Pobierz zapisaną wartość, jeśli nie istnieje, wybrano "default" $saved = get_post_meta( $post->ID, 'title_color', true); if( !$zapisany ) $zapisany = 'domyślny'; $fields = array( 'red' => __('Red', 'wpse'), 'green' => __('Green', 'wpse'), 'blue' => __('Niebieski', 'wpse '), 'domyślny' => __('Domyślny', 'wpse'), ); foreach($fields as $key => $label) { printf( '<input type="pole wyboru" name="title_color" value="%1$s" id="title_color[%1$s]" %3$ s />'. ' %2$s ' . '
', esc_attr($key), esc_html($label), zaznaczone( $zapisano, $klucz, fałsz) ); } } /* Po zapisaniu wpisu zapisuje nasze niestandardowe dane */ function wpse_61041_save_postdata( $post_id ) { // sprawdź, czy jest to procedura automatycznego zapisywania. // Jeśli to jest nasz formularz nie został przesłany, więc nie chcemy nic robić if ( define( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) return; // zweryfikuj, że pochodzi z naszego ekranu i z odpowiednią autoryzacją, // ponieważ save_post może zostać wywołany w innym czasie if ( !wp_verify_nonce( $_POST['wpse_61041_noncename'], 'wpse_61041_wpse_61041_field_nonce' ) ) return; if ( isset($_POST['title_color']) && $_POST['title_color'] != "" ){ update_post_meta( $post_id, 'title_color', $_POST['title_color'] ); } }


title: Wiadomości e-mail dotyczące automatycznych aktualizacji

text: Gdy witryna zostanie automatycznie zaktualizowana, WordPress wysyła wiadomość e-mail na podstawie czegoś takiego jak.... [Przykład.com] Twoja witryna została zaktualizowana do wersji WordPress 3.8.1 Witaj! Twoja witryna pod adresem http://www.example.com została automatycznie zaktualizowana do wersji WordPress 3.8.1. [...] Jak można by zmodyfikować treść tego e-maila - m.in. przepisać tekst? Chętnie napiszę to we wtyczce, ale musisz wiedzieć, czy istnieje jakiś filtr dla tego tekstu e-maila. Wydaje się, że nigdzie nie ma o tym żadnej wzmianki!


title: Tworzenie kanału RSS ze wszystkimi postami z poprzedniego miesiąca

text: Jak mogę utworzyć kanał RSS, który będzie wyświetlał wszystkie posty z poprzedniego miesiąca. Tak więc w dowolnym dniu grudnia kanał pokaże wszystkie posty z listopada i tak dalej. Dziękuję.


title: Wordpress zawsze i wszędzie zwraca ten sam identyfikator posta!

text:
W ostatnio opracowanym przeze mnie temacie dzieje się coś dziwnego. Wewnątrz strony posta, kiedy używam `$post->ID` i `get_the_ID()`, zawsze zwraca ten sam identyfikator, który należy do jednego z moich postów! Zastanawiam się, co się tam dzieje?!!! **Edytuj** : znalazłem przyczynę tego zachowania. A chodzi o to, że stworzyłem widżet, w którym używam klasy `WP_Query` (kod widać na końcu) i chyba nadpisuje globalny $post. class TextAds extends WP_Widget{ function TextAds(){ $widget_ops = array( 'description' => __( "نمایش تبلیغات متنی", 'appthemes') ); $this->WP_Widget('textads', __('تبلیغات متنی', 'appthemes'), $widget_ops); } widget funkcji($args, $instance){ //global $userdata; ekstrakt($args); if ( !empty($instance['title']) ) { $title = $instance['title']; } else { $title = 'تبلیغات متنی'; } echo $before_widget; $title = apply_filters('widget_title', $title, $instance, $this->id_base); $term = get_term_by( 'slug','text', 'ad_cat' ); $text_query = nowe WP_Query( array('post_type' => APP_POST_TYPE, APP_TAX_CAT => $term->slug, 'ignore_sticky_posts' => 1 )); ?>
<?php echo $title; ?>

 <?php while ( $text_query->have_posts() ) : $text_query->the_post(); ?>
<a href="<?php //$url = get_post_meta(get_the_ID(),'cp_url',true); if(stripos($url,'http://') === false){ $url = 'http://'.$url; } echo $url; ?>"><?php the_title(); ?>

 <?php endwhile; ?> <?php echo $after_widget; } function form( $instance ) { ?>
<label for="<?php echo $this->get_field_id('title'); ?>"><?php _e('عنوان ابزارک:', 'appthemes ') ?> <input type="text" class="widefat" id="<?php echo $this->get_field_id('title'); ?>" name="<?php echo $this ->get_field_name('title'); ?>" value="<?php if (isset ( $instance['title'])) {echo esc_attr( $instance['title'] );} ?>" />
 <?php } aktualizacja funkcji( $nowa_instancja, $stara_instancja ) { $instance['title'] = strip_tags(stripslashes($new_instance['title'])); zwróć $instancję; } }


title: nie znaleziono strony dla pliku single-type.php

text: Stworzyłem niestandardowy typ postu „zdarzenie”, który ma być wyświetlany na pojedynczej stronie o nazwie single-event.php, ale wyświetla mi się błąd 404. jak mogę rozwiązać ten problem, nawet gdy używałem > flush_rewrite_rules(); proszę podać jakiś pomysł....... function custom_event() { $labels = array( 'name' => _x('Event', 'Ogólna nazwa typu postu'), 'singular_name' => _x('Event' , 'post typ pojedyncza nazwa'), 'add_new' => _x('Dodaj wydarzenie', 'Zawartość'), 'add_new_item' => __('Dodaj nowe wydarzenie'), 'edit_item' => __('Edytuj wydarzenie '), 'new_item' => __('Nowa treść'), 'view_item' => __('Wyświetl wydarzenie'), 'search_items' => __('Przeszukaj treść'), 'not_found' => __(' Nic nie znaleziono'), 'parent_item_colon' => '', 'menu_name' => __('Zdarzenie') ); $args = array( 'labels' => $labels, 'public' => true, 'publicly_queryable' => true, 'show_ui' => true, 'show_in_menu' => true, 'query_var' => true, 'rewrite ' => true, 'capability_type' => 'post', 'has_archive' => true, 'hierarchical' => false, 'menu_position' => 20, 'supports' => array( 'title', 'editor') ); flush_rewrite_rules(); register_post_type('zdarzenie', $args); } //$wp_rewrite->flush_rules(); //add_action('admin_init', 'flush_rewrite_rules'); add_action ('init', 'custom_event');


title: Jak dodać wyróżniony obraz do pojedynczej strony posta?

text: Używam motywu Pinboard na WordPress 3.9.1. Chciałbym edytować tablicę korkową (lub, dokładniej, utworzyć motyw podrzędny), aby na stronach z pojedynczym postem, jeśli post ma zdefiniowany wyróżniony obraz, wyświetlał się u góry posta. Doszedłem do wniosku, że wymaga to edycji pliku single.php w motywie, ale moja wiedza na temat PHP jest w najlepszym razie minimalna, więc kiedy otwieram plik single.php, nie mogę dowiedzieć się, gdzie wprowadzić zmiany - lub, w fakt, jakie zmiany wprowadzić. Czy ktokolwiek zechciałby przeprowadzić mnie przez to, czego potrzeba, aby umieścić wyróżniony obraz u góry strony posta, takiej jak ta? Gdy zrozumiem, jak prawidłowo umieścić obraz na stronie, powinienem być w stanie go wystylizować tak, jak chcę. Jest to prawdopodobnie prośba o trochę więcej trzymania się za ręce niż jest to normalne tutaj, więc z góry wielkie dzięki.


title: Użyj get_post_types do zapytania tylko o niestandardowe typy postów

text: Muszę pytać tylko o niestandardowe typy postów - to znaczy wszystkie typy postów w mojej instalacji WP z wyłączeniem postów i stron. Użyłem `get_post_types` do zbudowania ciągu wszystkich niestandardowych typów postów, o które chcę zapytać: $args=array( 'public' => true, 'exclude_from_search' => false, '_builtin' => false ); $wyjście = 'nazwy'; // nazwy lub obiekty, nazwy nut są domyślnie $operator = 'and'; // 'i' lub 'lub' $post_types=get_post_types($args,$output,$operator); // Przeprowadź pętlę przez cpts i przypisz powiązaną taksonomię do zmiennej $posttypes_array = ""; foreach ($post_types as $post_type ) { $posttypes_array .= "$post_type, "; } $posttypes_array = rtrim($posttypes_array, ', '); echo $tablica_posttypes; Dane wyjściowe dla zmiennej `$posttypes_array` to następujący ciąg: 'puzzles', 'quizzes', 'challenges', 'tales', 'can_you_help' Mój problem polega na tym, że nie mogę użyć tej zmiennej do odpytywania wszystkich tych typów postów tak: $buildArgsAllQuestions = array( // Dodaj nowe parametry zapytania 'post_type' => array($posttypes_array), //'post_type' => $posttypes_array, 'orderby' => 'date', 'order' => „DESC”, ); Moje zapytanie dla wszystkich niestandardowych postów działa tylko wtedy, gdy używam tego wiersza dla post_type: 'post_type' => array( 'puzzles', 'quizzes', 'challenges', 'tales', 'can_you_help' ), Czy ktoś może mi powiedzieć, jak ja może użyć zmiennej `$posttypes_array` lub czegoś podobnego do zapytania o wszystkie niestandardowe posttype w następujący sposób: `'post_type' => array($posttypes_array)` ?


title: Jak dodać pusty wpis do muru?

text:
Używam biblioteki masonry js do wyświetlania postów w mojej instalacji wp. Problem polega na tym, że tak naprawdę nie można nic dodać między wpisami postów, ponieważ używane jest pozycjonowanie bezwzględne. Więc albo powinienem użyć js, aby włamać się do muru, aby dodać blok, który chcę, albo mogę dostosować pętlę kategorii/tagów wp (tam właśnie tego potrzebuję), aby dodać pusty wpis, którego mogę użyć jako symbolu zastępczego i umieścić na nim rzeczy to z CSS. Jak więc dodać pusty wpis do kategorii i pętli tagów? W moim przypadku muszę, aby pusty wpis był z przodu, więc powinno być tak: - najpierw pusty wpis - potem normalna pętla trwa Jak to zrobić? add_action( 'wp_enqueue_scripts', 'sk_masonry_script' ); //* Dodaj własną klasę ciała do nagłówka add_filter( 'body_class', 'sk_body_class' ); function sk_body_class( $classes ) { if (is_home()||is_archive()) $classes[] = 'masonry-page'; zwróć $klasy; } //* Wyświetl miniaturę posta, tytuł posta, treść/fragment postu, informacje o postu i meta posta w murze add_action('genesis_meta','sk_masonry_layout'); function sk_masonry_layout() { if (is_home()||is_archive()) { //add_filter( 'genesis_pre_get_option_site_layout', '__genesis_return_full_width_content' ); remove_action( 'genesis_entry_header', 'genesis_do_post_title' ); remove_action( 'genesis_entry_header', 'genesis_post_info', 12 ); remove_action( 'genesis_entry_header', 'genesis_entry_header_markup_open', 5 ); remove_action( 'genesis_entry_header', 'genesis_entry_header_markup_close', 15 ); remove_action( 'genesis_entry_content', 'genesis_do_post_image', 8 ); remove_action( 'genesis_entry_content', 'genesis_do_post_content' ); remove_action( 'genesis_entry_footer', 'genesis_post_meta' ); add_action( 'genesis_entry_content', 'sk_masonry_block_post_image', 8 ) ; add_action( 'genesis_entry_content', 'sk_masonry_title_content', 9 ); add_action( 'genesis_entry_footer', 'sk_masonry_entry_footer' ); remove_action( 'genesis_before_loop', 'genesis_do_breadcrumbs' ); add_action( 'genesis_before_content', 'genesis_do_breadcrumbs' ); remove_action( 'genesis_before_loop', 'genesis_do_taxonomy_title_description', 15 ); add_action( 'genesis_before_content', 'genesis_do_taxonomy_title_description', 15 ); remove_action( 'genesis_before_loop', 'genesis_do_author_title_description', 15 ); add_action( 'geneza_przed_treścią', 'geneza_do_autora_opis_tytułu', 15 ); remove_action( 'genesis_before_loop', 'genesis_do_author_box_archive', 15 ); add_action( 'genesis_before_content', 'genesis_do_author_box_archive', 15 ); remove_action( 'genesis_before_loop', 'genesis_do_cpt_archive_title_description' ); add_action( 'genesis_before_content', 'genesis_do_cpt_archive_title_description' ); remove_action( 'genesis_after_endwhile', 'genesis_posts_nav' ); add_action( 'genesis_after_content', 'genesis_posts_nav' ); } } //* Funkcja pomocnicza do wyświetlania tytułu posta i treści/fragmentu posta opakowanych w niestandardową funkcję div sk_masonry_title_content() { echo '
'; genesis_do_post_title(); genesis_do_post_content(); echo '
'; } //* Funkcja pomocnicza do wyświetlania informacji o wpisie i meta funkcja wpisu sk_masonry_entry_footer() { genesis_post_info(); geneza_post_meta(); } //* Ustaw drugi parametr na szerokość cegły murowanej (.home .entry, .archive .entry) add_image_size( 'masonry-brick-image', 255, 0, TRUE ); //* Funkcja pomocnicza do wyświetlania polecanego obrazu //* Źródło: http://surefirewebservices.com/development/genesis-framework/using-the-genesis-featured-image function sk_masonry_block_post_image() { $img = genesis_get_image( array( ' format' => 'html', 'rozmiar' => 'obraz-cegła-murowana', 'attr' => array( 'class' => 'post-obraz' ) ) ); printf( '%s', get_permalink(), the_title_attribute( 'echo=0' ), $img ); } //* Dodaj więcej linków podczas korzystania z fragmentów function sk_excerpt_more($more) { return '  [Czytaj dalej]'; } add_filter('excerpt_more', 'sk_excerpt_more'); //* Zmień długość fragmentów posta add_filter( 'excerpt_length', 'sk_excerpt_length' ); function sk_excerpt_length( $długość ) { return 33; // wyciągnij pierwsze 10 słów }


title: Reguła przepisywania wyłapuje strony, a nie posty

text: Próbuję zaimplementować witrynę wordpress, w której prawdopodobnie jest generowana nazwa w formacie imię.nazwisko z przodu adresu URL. Mam następującą regułę $wp_rewrite->rules = $newrules + $wp_rewrite->rules; $newrules = array('('.$var['RealName'].')/(.+)$' => 'index.php?pagename='.$name.'&brokername='.$wp_rewrite->preg_index (1)); $wp_rewrite->zasady = $newrules + $wp_rewrite->zasady; Zapętlam i dodaję zasady dla każdej osoby. Mój problem polega na tym, że działa to dobrze w przypadku Stron, ale nie działa w przypadku Postów? Jakieś pomysły?


title: Uniemożliwianie wyszukiwarkom indeksowania stron 2, 3 i innych?

text: Czy wiesz jak zapobiec indeksowaniu stron poza stroną główną w WP? Chodzi mi o to, że nie chcę, aby `mysite.com/page/2`, `mysite.com/page/3` były indeksowane. Dzieje się tak, ponieważ używam `home.php` dla mojego motywu, więc `page/2`, `page/3` są takie same. Proszę o podpowiedź lub fragment kodu, nie chcę dodawać kolejnej wtyczki (meta robotów).


title: Jak mogę dodać nowy post na nowej stronie?

text: Stworzyłem swojego bloga (WP 3.4) w następujący sposób: stworzyłem strony w moim blogu, aby mieć je jako osobne elementy nawigacyjne w nagłówku (wygląda to tak: Home, PageA, PageB, itp.). To, co chcę teraz zrobić, to tworzyć posty na stronach. Kiedy tworzę posty, nie ma możliwości wybrania strony, na której powinien pojawić się mój post. Posty zawsze pojawiają się na stronie „Strona główna”. Właściwie chcę zrobić post na konkretnej stronie. Czy jest jakiś sposób, aby to zrobić. Jeśli tak, pomóż mi. Dziękuję.


title: Wordpress 3,5 i wersja Jquery

text: Zaktualizowałem swoją instalację WordPressa do najnowszej wersji (3.5), kiedy przeglądam kod źródłowy mojej witryny, zobaczyłem następujące wiersze <script type='text/javascript' src='http://localhost/myblog/wp-includes/ js/jquery/jquery.js?ver=1.8.3'></script> Wygląda na to, że WordPress ładuje tylko niezminifikowaną wersję Jquery. Czy jest jakiś sposób, abym mógł go skonfigurować, aby załadować zminifikowaną wersję w środowisku produkcyjnym? Nie mogę znaleźć żadnej zminifikowanej wersji w `/wp-includes/js/jquery`


title: Wiele TinyMCE łamie pisanie bez rozpraszania uwagi

text: Stworzyłem metabox, który ma wiele edytorów tinyMCE. Jednak teraz, kiedy przechodzę do edycji strony i klikam przycisk pełnego ekranu w głównym edytorze, pokazuje zawartość metaboxa. Po zamknięciu i powrocie do trybu pełnoekranowego wyświetla poprawną zawartość. Czy ktoś wie, od czego zacząć naprawianie tego? Dziękuję!


title: Wyświetlaj najnowsze posty w całości, fragmenty starszych postów

text: Bieganie 3.5.1. Czy istnieje prosty sposób, aby wyświetlić mój najnowszy post w całości i wyświetlać tylko fragmenty moich starszych postów na mojej stronie głównej?


title: Jak wykluczyć stronę w module stron

text: Witryna zawiera stronę z adresem URL http://example.com/mywpsite/mypage Używany jest motyw Pinboard. Moduł Strony pokazuje to na lewym pasku bocznym. Jak go z tego usunąć? Ustawienia modułu Strony zawierają wykluczone z pól identyfikatory stron. Umieściłem w nim mojąstronę, ale strona nadal jest wyświetlana na liście stron. Nie znalazłem żadnego innego identyfikatora strony w wordpressie dla tej strony. **Aktualizacja** Menu konfiguracyjne stron jest dostępne w następujący sposób (teksty przetłumaczone na język angielski): W panelu administracyjnym kliknij Moduły wyglądu i spójrz na "Pasek boczny po lewej". Zawiera słowo Strony poniżej. Następnie link Zmień. Następnie pojawia się menu konfiguracyjne zawierające pole Jäta välaj - "Wykluczone identyfikatory stron oddzielone przecinkiem". Wprowadzono nazwę strony "viga", ale strona viga nadal pojawia się na liście. Używam nazwy strony jako ustawienia linku do posta. W przypadku postów mogę kliknąć przycisk Pobierz link i zobaczyć numer, który prawdopodobnie jest identyfikatorem posta. Dla strony nie ma takiego ustawienia. ![Konfiguracja stron](http://i.stack.imgur.com/VievO.png)


title: Jak uzyskać listę postów na statycznej stronie innej niż strona główna?

text: Tak więc dla tysięcy osób używających WP jako CMS typowym podejściem jest użycie opcji „Strona statyczna” na stronie administratora Ustawienia> Czytanie. Jednak jestem w innym scenariuszu: nasza strona główna wyświetla zawartość statyczną (napędza nią szablon _home.php_), a my mamy dodatkową stronę statyczną (zwaną _News_ ), która powinna wyświetlać listę najnowszych postów (co zwykle znaleźć na pierwszej stronie przeciętnego bloga). Ustawiłem stronę Wiadomości tak, aby używała niestandardowego szablonu ( _page-NewsIndex.php_ ); oparty na szablonie archive.php TwentyTen, ten plik wyświetla nagłówek, wywołuje rewind_posts(), a następnie wywołuje get_template_part('loop', 'newsindex') tak, że kończymy w loop.php (lub loop-newsindex.php, jeśli tak jest istnieje). Aksamitny. _Loop.php_ ma typową strukturę pętli (znowu, opartą na szablonie loop.php firmy TwentyTen - poprawiony, aby uprościć, ponieważ nie potrzebujemy 3 rodzajów pętli): <?php while ( have_posts() ) : the_post(); ? Jaki byłby dla mnie odpowiedni query_posts do symulowania query_posts, który WP zwykle uruchamia dla Ciebie, gdy dojdziesz do pierwszej strony typowego bloga?


title: Czy możesz przechowywać dane sesji dla odwiedzających?

text: Czytałem, że można użyć session_start() w config.php, ale nie jest to zalecane. Mam formularz, w którym użytkownik wpisuje swoje imię i przesyła. Po potwierdzeniu zgłoszenia wylądują na nowej stronie z napisem „Dziękuję pierwsze i ostatnie”. Jaki jest preferowany sposób przekazywania tych informacji ze strony 1 na stronę 2?


title: Autowzrost obszaru wejściowego wyszukiwania - jak?

text: Przez wiele godzin próbowałem nadać styl mojemu formularzowi wyszukiwania. Udało mi się to wszystko zrobić po kilku badaniach. Udało mi się nawet wyróżnić tekst, gdy skupiłem się na javascript (nie mam pojęcia, czy istnieje również rozwiązanie inne niż javascript). w każdym razie googlowałem i wypróbowywałem różne rzeczy (np. Bawiłem się szerokością, gdy "onfocus" w moim style.css) - nic nie działało. Chcę automatycznie zwiększać szerokość dla mojego formularza wyszukiwania, jak w motywie Twenty Eleven. Zasadniczo to, czego chcę, to po kliknięciu obszaru wejściowego, który stanie się nieco szerszy. To, co udało mi się znaleźć, to ta wtyczka, która używa jquery. Nie wiem jednak, jak to zaimplementować. Czy używanie jquery jest jedyną opcją, jaką mam? Czy mogę uzyskać ten efekt inną metodą? Naprawdę bardzo się starałam i szukałam godzinami, ale nie mogłam znaleźć odpowiedzi, więc będę szczęśliwa za każdą radę, której możesz mi udzielić :) Z góry bardzo dziękuję!


title: Włącz widżet Ostatnie komentarze, aby wyświetlać komentarze we wpisach w załącznikach

text: Czy można podłączyć się do domyślnego widżetu Ostatnie komentarze, aby umożliwić wyświetlanie komentarzy do postów załączników? Jeśli tak to jak?


title: Jak utworzyć sieć wielostanowiskową?

text: Zastanawiam się, jak zrobić sieć wielostanowiskową z wordpressem. Najlepszym przykładem jest sieć cheezburgerów.


title: .htaccess i pasek administratora WordPress

text: Zbudowałem wiele witryn WordPress dla klientów i moją zwykłą praktyką jest utrzymywanie wszystkich rzeczy WP w katalogu /wordpress/ na poziomie root. Jednak nie podoba mi się, że ten katalog pojawia się w adresach URL, więc po prostu pomijam go w linkach i używam .htaccess, aby po cichu go ponownie wstawić... # Jeśli nie jest to bezpośrednie żądanie dotyczące istniejącego pliku lub katalogu, # dodaj /wordpress/ na początku każdej ścieżki pliku, chyba że już istnieje RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !^\/wordpress\/.* RewriteRule ^(.*)$ /wordpress/$1 [L,NE] (Jest to ręczna edycja pliku .htaccess na poziomie głównym witryny. Plik .htaccess w katalogu /wordpress/ implementuje strukturę permalinku `/%postname%`.) Ten układ działał dobrze, dopóki nie pojawił się pasek administracyjny (WordPress 3.1?). Problem, który mam teraz - we wszystkich tych witrynach - polega na tym, że pasek administratora (w interfejsie dla zalogowanych użytkowników) jest wyświetlany tylko wtedy, gdy ręcznie ponownie wstawię "/wordpress/" do adresu URL w pasku adresu przeglądarki. `http://www.hlbc.org.uk/wordpress/about` — widoczny pasek administratora `http://www.hlbc.org.uk/about` — pasek administratora **nie** widoczny Podejrzewam, że to ma coś wspólnego z obiektem WP_Rewrite, ale jeszcze nie próbowałem się z tym zmagać. Czy ktoś może dać mi wskazówki, które pomogą mi zrozumieć, co się dzieje? Każda pomoc jest bardzo ceniona. Dziękuję! * * * @Milo: Dzięki. Nie wiedziałem o tym włamaniu. Ale dla ułatwienia aktualizacji wolałbym coś, co nie wymagało ingerowania w podstawowe pliki WP - i nadal chciałbym wiedzieć, dlaczego mój system nie działa! @Sean Lee: Niezła próba - i użyteczna. Spędziłem wiele godzin na majstrowaniu przy wyrejestrowywaniu itp. i jestem teraz przekonany, że nie ma to nic wspólnego z javascriptem, ale raczej, że bez `/wordpress/` w adresie URL nie jestem w ogóle uważany za zalogowanego. Czy może to być problem z `COOKIEPATH`? @Milo: Przyjrzę się temu jeszcze raz i może wypróbuję to na następnej stronie, którą zrobię. Początkowo byłem zniechęcony tym, że muszę edytować plik WP `index.php`. Ale przypuszczam, że jeśli znajduje się poza katalogiem `\wordpress\`, to prawdopodobnie nie zostanie nadpisany podczas aktualizacji. Czy 2 aktywne wiersze kodu gwarantują, że nigdy się nie zmienią w przyszłych wersjach?


title: zezwól użytkownikowi na stylizowanie tła widżetu na widżet

text: Czy istnieje sposób, aby zezwolić użytkownikowi na stylizowanie tła widżetów na widżet? Powiedzmy, że na pasku bocznym są 4 widżety, chcę, aby użytkownik mógł wystylizować pierwsze 2 z niebieskim tłem, drugie z fioletowym tłem i ostatni bez tła, ale jak pozwolisz użytkownikowi na tworzenie ten wybór?


title: Paginacja wyszukiwania w wielu witrynach jest zepsuta

text: sieć CG Cookie uruchamia instalację WordPress w wielu witrynach. Istnieje dziwny błąd dotyczący stronicowania wyszukiwania na którejkolwiek z podstron. Na przykład, jeśli przejdziesz do http://cgcookie.com/blender/, która jest jedną z podstron, i wyszukasz „blender”, zostaniesz przeniesiony na stronę wyników wyszukiwania zawierającą około 389 pozycji. Pierwsza strona wyświetla się doskonale, ale jeśli spróbujesz przejść do strony 2 lub innej, zostaniesz przekierowany do losowego wpisu samouczka. Po dokładniejszym zbadaniu zauważysz, że adres URL numerów stron ma następującą strukturę: http://cgcookie.com/blender/blender/page/2/?s=blender To jest nieprawidłowe i powinno mieć następującą postać: http: //cgcookie.com/blender/page/2/?s=blender Z jakiegoś powodu nazwa witryny jest dwukrotnie wstawiana do adresu URL wyszukiwania. Jeśli ręcznie usunę jedną z nazw witryn i wprowadzę poprawny adres URL, wszystko działa dobrze. Dlaczego umieszcza w adresie URL dwie nazwy witryn? Ważne jest, aby pamiętać, że ten błąd występuje TYLKO na stronach wyników wyszukiwania (nie w żadnym z archiwów) i pojawia się WYŁĄCZNIE na podstronie. Jeśli wyszukujesz „blender” z domeny http://cgcookie.com, to działa idealnie. Do paginacji używam funkcji, którą napisał tutaj Kriesi. Zauważ jednak, że nie wierzę, że jest to problem z funkcją, ponieważ wtyczka WP Page Numbers miała dokładnie ten sam problem. Zetknąłem się już raz z tym problemem, a moje pytanie na ten temat możesz zobaczyć tutaj. Opisane tam poprawki nie zrobiły żadnej różnicy. Czy ktoś ma jakieś pomysły?


title: Pokaż stronę główną (tylko) Liczba odsłon

text: Potrzebuję licznika do umieszczenia w moim motywie (za pomocą php) lub widżetu, aby pokazać liczbę wyświetleń strony głównej Próbowałem "Cystats", ale nie mogłem uzyskać "tylko" trafień na stronę główną, jak mogę to zrobić? (istnieje pomysł, aby pokazać, ile razy strona została otwarta - liczba sesji - na przykład - ale nie mogłem znaleźć żadnego licznika, aby to zrobić, można znaleźć sposób na pokazanie tego zamiast liczby stron głównych)


title: add_rewrite_rule query_var nie jest ustawiony

text: Mam nietypowe użycie add_rewrite_rule (czy jest to zwykłe użycie?) i otrzymuję nieoczekiwane zachowanie. Najpierw mój kod: if(!empty($list_view_template)) add_rewrite_rule( "{$list_view_template}/(.*)?", 'index.php?mlscrit=$matches[1]/list-view/&pagename=' $list_view_template, 'góra' ); add_filter('init', 'mls_declare_mls_custom_vars'); funkcja mls_declare_mls_custom_vars() { add_rewrite_tag( '%mlscrit%', '(.*)' ); }, jak widać, używam nazwy strony ustawionej w panelu administratora na zmienną o nazwie $list_view_template, aby ograniczyć regułę przepisywania. Działa to dobrze, o ile opróżniam reguły przepisywania po aktualizacji wartości (co robię). Problem dotyczy zmiennej zapytania mlscrit. Kiedy przepuszczam to przez doskonały analizator przepisywania Jana Fabry'ego, http://wordpress.stackexchange.com/a/3608/27556, daje mi to, czego oczekuję, mlscrit = '/list-view/' plus cokolwiek jest w wyrażeniu regularnym jeśli wyrażenie regularne jest puste. Jednak jeśli to zrobię: add_action( 'template_redirect', 'mls_feed_rewrite_catch' ); function mls_feed_rewrite_catch() { echo 'mlscrit:' . get_query_var('mlscrit' ); } a wyrażenie regularne ma coś w sobie, działa. Ale jeśli wyrażenie regularne jest puste, zmienna traci również część '/list-view/' tak, że jest pusta. Czy ktoś może mi wyjaśnić, dlaczego tak się dzieje? Powinienem również wspomnieć, że próbowałem zakodować nazwę strony, próbowałem użyć filtra query_var zamiast add_rewrite_tag i próbowałem pobrać wartość mlscrit w kilku różnych miejscach i zawsze otrzymuję tę samą odpowiedź, mlscrit jest pusty, chyba że jest coś w wyrażeniu regularnym. Dziękuję Ci! Mateusz


title: Pobierz opcje ustawione za pomocą wtyczki

text: Tworzę prostą wtyczkę "ustawień globalnych", która po prostu zapisuje kilka pól tekstowych. Zapisywanie działa zgodnie z przeznaczeniem i mogę pobrać moje dane w interfejsie użytkownika w następujący sposób: <?php $options = get_option('wpglobalsettings'); ?> <?php echo $options['wpglobalsettings_image1']; ?> Chciałbym jednak uniknąć wywoływania get_option('wpglobalsettings'); na każdej stronie, na której planuję używać mojej wtyczki. Pomyślałem więc, że mógłbym dodać moje $options do haka akcji. Zrobiłem co następuje, ale to nie działa (otrzymuję pustą tablicę. function wp_global_settings_frontend(){ $options = get_option('wpglobalsettings'); } add_action('the_content', 'wp_global_settings_frontend');Czy możesz pomóc?Wiele Dziękuję!


title: JavaScript dodany jako link/arkusz stylów

text: Po prostu próbuję stworzyć wtyczkę, która doda trochę JS do nagłówka i niestandardowego CS. Mam to poniżej, ale dodaje źle css i wyświetla się jako JS. To jest pierwsza wtyczka, którą próbowałem. <?php /** * Nazwa wtyczki: mmoore5553 Prosty suwak zakresu * URI wtyczki: mailto:mmoore5553@gmail.com * Opis: Prosty suwak zakresu * Wersja: 1.0 * Autor: mmoore5553@gmail.com * URI autora: * Licencja: GPL2 */ function SimpleRangeSlider() { wp_register_script('SimpleRangeSlider', plugins_url('/js/simple-slider.js', __FILE__), array('jquery'),'1.1', true); wp_enqueue_script('SimpleRangeSlider'); } add_action( 'wp_enqueue_scripts', 'SimpleRangeSlider' ); function SimpleRangeSlider1() { wp_register_script('stylesheet1', plugins_url('/css/simple-slider.css', __FILE__)); wp_enqueue_script('stylesheet1'); } add_action( 'wp_enqueue_scripts', 'SimpleRangeSlider1' ); function SimpleRangeSlider2() { wp_register_script('stylesheet2', plugins_url('/css/simple-slider-volume.css', __FILE__)); wp_enqueue_script('stylesheet2'); } add_action( 'wp_enqueue_scripts', 'SimpleRangeSlider2'); ?>


title: dołączyć treść <p> do instrukcji warunkowej?

text: Mam stronę galerii, na której jest wiele pojedynczych galerii/podstron. Obsługuję tę funkcję za pomocą: <?php if( is_page( 39 )) { echo do_shortcode('[nggallery id=1]'); } else { } ?> Zastanawiam się, czy jest sposób na włączenie do tego treści specyficznej dla strony? Na przykład, jeśli ten kod jest używany do wyświetlenia galerii A, jak mogę dołączyć informacje biograficzne A w tej instrukcji (za pomocą `<p>`)?


title: Zapytanie o niestandardowy typ posta na podstawie wprowadzonego tekstu

text:
Chcę zapytać o niestandardowy typ posta za pomocą trzech poniższych pól. Dwa pola wyboru i jedno pole tekstowe. Pole tekstowe to to, które aktualnie nie działa. Co jest nie tak? Jak mogę to naprawić? <form name="search" action="" method="get"> Miasto: <select name="city" style="width:175px;" > <?php $miasta = mo_baptist_get_meta('ulica_miasto'); if ($cities) { foreach ($cities as $city) { echo "<option value=\"" . $city . "\">" . $miasto . "</option>"; } } ?> </select> Powiązanie: <select name="association" style="width:175px;"> <?php $associations = mo_baptist_get_meta('skojarzenie') ; if ($associations) { foreach ($associations as $association) { echo "<option value=\"" . $association . "\">" . $stowarzyszenie . "</option>"; } } ?> </select> <input type="text" name="zipcode" placeholder="Kod pocztowy" value="<?php $zip_code = mo_baptist_get_meta('street_zip'); ?>" <input type=" prześlij" value="szukaj" /> </form> <?php $az = range('a', 'z'); ?>
 <colgroup> <col width="300"> <col width="200"> <col /> <col /> </colgroup>
 <?php _e('Nazwa' ); ?>	 <?php _e('Miasto'); ?>	 <?php _e('Telefon'); ?>	 <?php _e('Witryna'); ?>

 <?php $zip_code = $_GET['street_zip']; $miasta = $_GET['miasto']; $skojarzenia = $_GET['skojarzenie']; if ($cities || $associations || $zip_code) { $paged = (get_query_var('paged')) ? get_query_var('stronicowane') : 1; $args=array( 'post_type' => 'church', 'order' => 'ASC', 'orderby' => 'title', 'posts_per_page' => 25, 'paged'=>$paged, 'meta_query' => array( array( 'wartość' => $miasta, ), array( 'wartość' => $skojarzenia, ), array( 'wartość' => $kod_zip, ) ) ); zapytanie_posty($args); } else { query_posts(array( 'post_type' => 'church', 'order' => 'ASC', 'orderby' => 'title', 'posts_per_page' => 25, 'paged' => $paged )) ; } if (have_posts()): while (have_posts($paged)): the_post(); $kościół = get_post_custom($post->ID); ?>
 <a href="<?php the_permalink(); ?>" id="kościół-<?php the_ID(); ?>"><?php the_title(); ?>	 <?php echo $church['street_city'][0]; ?>	 <?php echo $kościół['telefon'][0]; ?>	 <?php if (!empty($church['website_url'][0])): ?><a href="http://<?php echo $church['website_url '][0]; ?>"><?php _e('Strona główna') ?><?php endif; ?>
 <?php endwhile; endif; ?>

 <?php kriesi_pagination(); ?>


title: onload javascript wywoływanie funkcji wtyczki

text: Znajomy stworzył dla mnie wtyczkę, która pozwala użytkownikom oznaczać posty jako przeczytane lub nieprzeczytane. Kod tej wtyczki jest następujący: edycja kodu! <?php /** * @package Przeczytane-nieprzeczytane * @wersja 1.0 */ /* Nazwa wtyczki: Przeczytana-nieprzeczytana URI wtyczki: http://www.google.fr Opis: Przeczytana-nieprzeczytana wtyczka Autor: Moi Wersja: 1.0 URI autora: http://www.google.fr */ global $wpdb; $table_name = $wpdb->prefiks . "użytkownicy_przeczytani"; $sql = "UTWÓRZ TABELĘ, JEŚLI NIE ISTNIEJE `$nazwa_tabeli` ( `ID_USER` int(11) NOT NULL, `ID_POST` int(11) NOT NULL, ) ENGINE=InnoDB DEFAULT CHARSET=latin1;"; require_once( ABSPATH . 'wp-admin/includes/upgrade.php' ); dbDelta( $sql ); function all_css() { echo ' <styl> .post-read { kursor: wskaźnik; } </style>'; } function all_js() { echo ' <skrypt> jQuery(function($) { $(".post-read").click(function() { action = $(this).data("action"); if( $(this).data("action") == "read") { $(this).attr("src", "http://corentinbuet.fr/wordpress/wp-content/plugins/Read-Unread/ LU.png"); $(this).attr("title", "Zaznacz comme Non lu"); $(this.data("akcja", "nieprzeczytane"); } else { $(this).attr ("src", "http://corentinbuet.fr/wordpress/wp-content/plugins/Read-Unread/NON_LU.png"); $(this.attr("title", "Marquer comme Lu"); $(this).data("action", "read"); } postID = $(this).data("id"); var data = { "action": akcja, "idPost": postID }; $.post("/wp-admin/admin-ajax.php", dane, funkcja(odpowiedź) { }); }); }); </script>'; } funkcja ajax_read() { globalna $wpdb; $idUser = intval(get_current_user_id()); $idPost = intval($_POST['idPost']); $tabela = $wpdb->przedrostek . "użytkownicy_przeczytani"; $data = array('ID_USER' => $idUser, 'ID_POST' => $idPost); $format = tablica('%d','%d'); $res = $wpdb->insert( $tabela, $dane, $format ); if($res == false) { return 1; } zwróć 0; umierać(); } funkcja ajax_unread() { globalna $wpdb; $idUser = intval(get_current_user_id()); $idPost = intval($_POST['idPost']); $tabela = $wpdb->przedrostek . "użytkownicy_przeczytani"; $where = array('ID_USER' => $idUser, 'ID_POST' => $idPost); $where_format = array('%d','%d'); $res = $wpdb->delete( $tabela, $gdzie, $gdzie_format ); if($res == false) { return 1; } zwróć 0; umierać(); } add_action( 'wp_ajax_read', 'ajax_read' ); add_action( 'wp_ajax_unread', 'ajax_unread' ); funkcja get_img_read_unread() { global $wpdb; $idUser = intval(get_current_user_id()); $idPost = intval(get_the_ID()); $wiadomość = ''; if($idUser > 0 && $idPost > 0) { $read = $wpdb->get_var( "SELECT COUNT(*) FROM wp_users_read WHERE ID_POST=$idPost AND ID_USER=$idUser"); if($read == 1) { echo ''; } else { echo ''; } } } funkcja add_button($zawartość) { global $wpdb; $idUser = intval(get_current_user_id()); $idPost = intval(get_the_ID()); $wiadomość = ''; if($idUser > 0 && $idPost > 0) { $read = $wpdb->get_var( "SELECT COUNT(*) FROM wp_users_read WHERE ID_POST=$idPost AND ID_USER=$idUser"); if($read == 1) { $msg = ''; } else { $msg = ''; } } $posttype = get_post_type( get_the_ID() ); if ($posttype == post) { return $content . $wiadomość; } else { zwróć zawartość $; } } add_filter('the_content', 'add_button'); add_action( 'wp_footer', 'all_js' ); add_action( 'wp_head', 'all_css' ); ?> Chciałbym oznaczyć jako przeczytany post, gdy post zostanie otwarty przez użytkownika. Więc jak mogłem to zrobić? Jeśli nie jestem wystarczająco zrozumiały, daj mi znać, a postaram się wyjaśnić lepiej. Dziękuję Ci. Corentin


title: Metabox do wyświetlania/przechowywania określonego typu tagu post

text: Jestem tutaj w impasie. Prowadzę blog kulinarny dla przyjaciela. Jako tagi wpisuje składniki każdego posta z przepisami. W dalszej części zamierzam utworzyć stronę, na której użytkownik zobaczy listę wszystkich składników w bazie danych, będzie mógł sprawdzić składniki, które posiada, i otrzyma listę przepisów oznaczonych wszystkimi sprawdzonymi składnikami. Sednem sprawy jest to, że potrzebuję sposobu na opisanie każdego z tych tagów składników jako składników w bazie danych, aby zapytanie automatycznie wyświetlało te składniki dla użytkownika. Używanie pól niestandardowych nie wydaje się być dobrym rozwiązaniem, ponieważ wszystkie wbudowane funkcje WordPressa wyświetlają tylko klucze/wartości post_meta dla danego postu. Ponadto występuje wiele duplikacji, ponieważ będzie wiele wystąpień tej samej wartości składnika, więc proste zapytania MySQL nie pomogą w tym. Ponadto wprowadzanie ich na ekranie Edytuj post nie jest zbyt przyjazne dla użytkownika z domyślnym metaboxem pól niestandardowych, ani nie jest możliwe w przypadku wtyczki Advanced Custom Fields. Chciałbym użyć czegoś takiego jak metabox kategorii — prosta lista z polami wyboru i możliwością dodania nowego składnika do listy. Gdy użytkownik opublikuje post, tagi w tym metaboksie w jakiś sposób zostaną zapisane w tabelach wp_terms, wp_term_taxonomy i wp_term_relationshiops z unikalnym identyfikatorem odróżniającym go jako tag składnika (jego własna taksonomia? użyć kolumny term_order? utworzyć nową kolumnę i użyć że?). Czytałem o tworzeniu niestandardowych metaboksów i rozumiem, jak to się ogólnie robi; jednak nie jestem tak obeznany w dostosowywaniu, jakie kategorie/tagi są pobierane i wyświetlane oraz jak dostosowywać dane zapisywane w bazie danych, abym mógł zapewnić, że tagi wprowadzane z tego metaboxa są zapisywane w unikalny sposób . Mam nadzieję, że to ma sens. Może przeoczam proste rozwiązanie tego problemu? Każda pomoc byłaby mile widziana. Dziękuję.


title: Skąd skrócony kod galerii pobiera załączniki?

text: Wiem, że media są typem wpisu załącznika, który jest potomkiem wpisu, ale jak są przechowywane galerie w WordPressie?


title: Jak uzyskać dzieci/załączniki w nagłówku?

text:
Próbuję dodać suwak do mojego niestandardowego szablonu strony. Chciałbym mieć swobodę przesyłania obrazów za pomocą przycisku dodawania multimediów w edytorze i nie mieć ograniczeń co do liczby obrazów. Poniżej znajduje się kod, którego używam: /* Nazwa szablonu: Właściwość */ add_action('genesis_entry_header','property_slider',15); function property_slider() { // tablica z parametrami $args = array( 'post_parent' => $post->ID, 'post_type' => 'attachment', 'orderby' => 'menu_order', 'order' => ' ASC', 'numberposts' => -1, 'post_mime_type' => 'obraz' ); if ( $images = get_children( $args )) { echo '

'; foreach( $images as $image ) { echo wp_get_attachment_image( $image->ID, 'full' ); } echo '

'; } } Powyższe wyświetla wszystkie obrazy w mojej galerii. Jak wyprowadzić tylko obrazy „przesłane na tę stronę”? Twój wkład jest bardzo doceniany!


title: Jak sprawdzić, która wtyczka się wyświetla?

text: Edytuję stronę Wordpress dla klienta, która została napisana przez kogoś innego. Zauważyłem, że na stronie głównej wyświetlany jest film i przycisk. Użyłem wtyczki Reveal-Template, aby dowiedzieć się, który szablon jest wyświetlany, ale nie mogę ustalić, która wtyczka jest używana do wyświetlania wideo i przycisku. Jestem pewien, że to też wtyczka, ponieważ wczoraj zmieniłem wideo. Problem, który próbuję rozwiązać, polega na tym, że chcę umieścić link na przycisku, ale obecnie jest on ustawiany tylko za pomocą menu rozwijanego. Oznacza to, że będę musiał przejść i edytować używaną wtyczkę, aby zezwolić na adres URL, a nie tylko strony wewnętrzne. Gdybym mógł dowiedzieć się, która to wtyczka, edytowałbym ten kod. Czy ktoś ma dobry sposób, aby to rozgryźć? Jestem bardzo nowy w programowaniu Wordpress, więc przepraszam, jeśli to naprawdę podstawowe pytanie. Z góry dziękuje za twoją pomoc!


title: Zmienne globalne Wordpressa?

text: Mam stronę z metaboxem o nazwie "coś". Może mieć dwie wartości „wartość” i „wartość2”. Używam shortcode na tej stronie i chcę, aby wyświetlał wartość czegoś. Problem polega na tym, że nie wiem, jak uzyskać dostęp do zmiennej globalnej w krótkim kodzie? Przykład, mam to w page.php: if($coś == "wartość") { global $jeden, $dwa; jeden dolar = 120; dwa dolary = 240; } Teraz chcę uzyskać dostęp do tych zmiennych w moim shortocde (plik functions.php), ale echo $one; echo dwa dolary; Nie daje wyjścia. Jakieś pomysły?


title: Dziwne wyszukiwane hasło pojawiające się w indeksie Google – „/?q=Save+Us+From+Berlusconi”

text: Dziwny. Usunięcie adresu URL mojej witryny i wyszukanie terminu „/?q=Save+Us+From+Berlusconi” w Google powoduje wyświetlenie tego wpisu na blogu napisanego w 2009 roku: http://www.seroundtable.com/archives/021647. html Moja witryna stoi w obliczu czegoś podobnego. Co powinienem zrobić? Czy to naprawdę błąd Google? Wygląda na to, że Berlusconi jest premierem Włoch; jednak moja strona nie ma nic wspólnego z tematyką polityczną. Widzę, że na forum Google jest kilka wątków -- starszych -- które mówią o tym dziwnym zapytaniu zaindeksowanym w Google. Przykładowe zapytanie: http://www.google.com/search?q=%22websites+to+automatically+post+blog+post+on+twitter%22&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla: pl-US:official&client=firefox-a Sprawdź drugi adres URL.


title: Dziwny niezdefiniowany indeks: id,std notices. Jak to naprawić?

text: Ok, uruchamiam Wordpress w trybie debugowania. Dostaję dużo ogłoszeń. To jest mój kod. <?php //pozwala motywowi uzyskać informacje ze strony opcji motywu global $options; foreach ($opcje jako $wartość) { if (get_option( $wartość['id'] ) === FALSE) { $$wartość['id'] = $wartość['std']; } else { $$value['id'] = get_option( $value['id'] ); } } ?> To właśnie widzę. Uwaga: Niezdefiniowany indeks: id w functions\get-options.php w wierszu 5 Uwaga: Niezdefiniowany indeks: std w functions\get-options.php w wierszu 5 Te uwagi powtórzyły się około 20 razy. Co jest nie tak w moim kodzie?. Czy ktoś może mi pomóc naprawić te błędy. Dziękuję.


title: Zarządzaj możliwościami edycji użytkownika na liście użytkowników (user.php)

text: Musiałbym wyłączyć edycję użytkownika dla niektórych użytkowników z listy użytkowników (user.php). Pomyślałem, że mógłbym użyć haka map_meta_cap lub user_has_cap, ale musiałbym znać user_id wewnątrz pętli, aby wyłączyć możliwość edycji, tylko dla tego konkretnego (lub więcej) użytkownika. Jak mogę uzyskać identyfikator użytkownika w pętli? Dziękuję


title: 2 posty ten sam fragment?

text:
Mam do czynienia z następującym problemem: wysyłam 2 posty z różnymi tytułami, datami, permalinkami, ale fragmenty są takie same. <?php $query = new WP_Query( array( 'post_type' => array( 'zdarzenia' ))); $miesiące = array("", "januari", "luty", "maart", "kwiecień", "mei", "juni", "juli", "sierpień", "wrzesień", "październik", "listopad" ", "grudzień"); function sortFunction( $a, $b ) { return $a["data"] - $b["data"]; } while ( $query->have_posts() ): $query->the_post(); $data = get_post_meta(get_the_ID(), 'data'); $id = get_the_ID(); $tosortposts []= array( 'date' => strtotime($date[0]), 'link' => get_permalink($id), 'title' => get_the_title($id), 'excerpt' => get_the_excerpt( 5) ); koniec; usort($tosortposts, "sortFunction"); foreach($tosortposts as $p){ echo '
'; Echo ''; echo $p['tytuł']; echo '

'; echo date('j', $p['data']).$miesiące[data("n", $p['data'])].'
'; fragment echa(35); echo '
»  Poproś o spotkanie
'; } ?> <?php endwhile; ?> Co robię źle?


title: jak sprawić, by motyw potomny zamienił funkcje w różnych plikach php, które są ładowane przez require_once?

text: pracuję nad motywem podrzędnym dla szablonu "wiadomości". mój problem polega na tym, że w motywie nadrzędnym są pewne funkcje, które są zdefiniowane w różnych plikach php. te pliki są wywoływane w functions.php z require_once. Myślę, że rozumiem, jak zwolnić funkcje i zdefiniować własne funkcje, ale jak wskazać wywołanie require_once do mojego nowego pliku w ścieżce motywu podrzędnego? okrzyki, troy


title: Zamów po imieniu

text:
Próbuję uporządkować listę członków według ~~display_name~~ lub imienia ASC. http://sim.is/sim/felagatal-sim/ Wydaje się, że to nie działa. Jakieś wskazówki? :/ $users = get_users(array( 'role' => 'sm_flagar', 'orderby' => 'display_name', 'order' => 'ASC', )); foreach ($users as $user) { $firstName = get_user_meta($user->ID, 'first_name', true); $lastName = get_user_meta($user->ID, 'last_name', true); echo '
user_url . '">' . $Imię . ' ' . $nazwisko . '
' . PHP_EOL; }


title: Pętla powiązanych postów - przesunięcie

text:
Pracuję nad tym już od wielu, wielu, wielu tygodni. Zadawałem już podobne pytania tu i gdzie indziej, ale wydaje się, że nikt nie jest w stanie rozwiązać tego problemu. Może i tak nie jest to możliwe? Moje powiązane posty są oparte na tagach, a kod wygląda tak: <?php $backup = $post; $tags = wp_get_post_tags($post->ID); if ($tags) { $tag_ids = array(); foreach($tags as $individual_tag) $tag_ids[] = $individual_tag->term_id; $args=array( 'tag__in' => $tag_ids, 'post__not_in' => array($post->ID), 'showposts'=>4, // Liczba powiązanych postów, które zostaną wyświetlone. 'caller_get_posts'=> 1); $ my_query = nowe wp_query($args); if( $my_query->have_posts() ) { while ($my_query->have_posts()) { $my_query->the_post(); ?> Chcę, aby użytkownicy mogli potem przewijać do kolejnych 4 powiązanych postów i ponownie do następnych 4. Łącznie 12 postów. Aby to zrobić, używam Scrollable jQuery Tools. Każda pętla będzie znajdować się między elementami div, dzięki czemu przewijanie będzie wskazywać, gdzie wyciąć zawartość i gdzie przewijać. Wszystko, co mogłem znaleźć o przesunięciu pętli, to: // PIERWSZA PĘTLA: wyświetl wpisy od 1 do 4 <?php query_posts('showposts=4'); ?> <?php $posts = get_posts('numberposts=4&offset=0'); foreach ($posty jako $post) : start_wp(); ?> <?php statyczny $liczba1 = 0; if ($count1 == "4") { przerwa; } else { ?> <?php the_title(); ?> <?php the_content(); ?> <?php $liczba1++; } ?> <?php endforeach; ?> // DRUGA PĘTLA: wyświetla posty od 5 do 8 <?php query_posts('showposts=5'); ?> <?php $posts = get_posts('numberposts=4&offset=4'); foreach ($posty jako $post) : start_wp(); ?> <?php statyczny $liczba2 = 0; if ($count2 == "4") { przerwa; } else { ?> <?php the_title(); ?> <?php the_content(); ?> <?php $liczba2++; } ?> <?php endforeach; ?> // TRZECIA PĘTLA: wyświetl posty od 9 do 12 <?php query_posts('showposts=4'); ?> <?php $posts = get_posts('numberposts=4&offset=8'); foreach ($posty jako $post) : start_wp(); ?> <?php statyczny $liczba3 = 0; if ($count3 == "4") { przerwa; } else { ?> <?php the_title(); ?> <?php the_content(); ?> <?php $liczba3++; } ?> <?php endforeach; ?> Próbowałem, ale ciągle pojawiają się komunikaty o błędach. W zasadzie po prostu nie mam pojęcia, jak połączyć mój oryginalny kod z tym. A może istnieje bardziej eleganckie rozwiązanie? **EDIT: UPDATE 17 października** Kod w zasadzie działa, jest tylko JEDEN OGROMNY PROBLEM. Teraz tworzy te same powiązane posty w każdym wpisie, nawet w postach, które nie mają nawet żadnych tagów! Ponadto psuje komentarze! Nie wyświetla prawidłowej liczby komentarzy i zamiast tego pokazuje pingbacki innego posta. Jakiś pomysł dlaczego?
Powiązane posty
   <?php $args=array( 'tag__in' => $tag_ids , 'post__not_in' => array($post->ID), 'showposts'=>12, // pobierz wszystkie posty na raz, a następnie podziel je później. 'ignore_sticky_posts' => 1 ); $posts_per_block = 4; $ my_query = nowe wp_query($args); ?>

 <?php if( $ my_query->have_posts() ) : while ($my_query->have_posts()) : $my_query->the_post(); if ( ($my_query->current_post) == 0 ) { echo '
'; } elseif ( ( $my_query->current_post ) % $posts_per_block == 0 ) { echo '

'; //zamknij i otwórz nowy div co n-ty post } elseif ( ( $my_query->current_post + 1) == ( $my_query->post_count )) { echo '
'; //zamknij div, jeśli skończą Ci się posty } ?>
<a href="<?php the_permalink() ?>" rel="bookmark"><?php the_post_thumbnail(array(120) ,80)); ?>
<a href="<?php the_permalink() ?>" rel="zakładka" title="Stały link do <?php the_title_attribute(); ?>"> <?php tytuł_(); ?>

 <?php endwhile; endif; ?>

   Mam nadzieję, że w końcu ktoś pomoże mi to rozgryźć. Z góry dziękuję.


title: Problemy z komentarzami i pingbackami

text:
Próbuję to rozgryźć od wielu, wielu dni. Próbowałem wielokrotnie modyfikować kod, zawsze z tym samym rezultatem. Po prostu tego nie rozumiem. Chcę poprawnie oddzielić pingbacki i komentarze, które zrobiłem następującym kodem: <?php if ( have_comments() ): ?>
<?php comments_number('Brak komentarzy', '1 komentarz', '% komentarzy' );?>

 <?php wp_list_comments(tablica( 'callback'=>'mojmotyw_komentarz', 'typ'=>'komentarz', )); ?>
 <?php paginate_comments_links(); ?>

 <?php else : // to jest wyświetlane, jeśli do tej pory nie ma komentarzy ?> <?php if ('open' == $post->comment_status) : ?> <! -- Jeśli komentarze są otwarte, ale nie ma komentarzy. --> <?php else : // komentarze są zamknięte ?>
Komentarze są zamknięte.
 <?php endif; ?> <?php endif; ?> <?php if ( have_comments() ) : ?>

Pingbacks
 <?php wp_list_comments(array( 'callback'=>'mytheme_comment', 'type'= >'pingi', )); ?>
 <?php else : // to jest wyświetlane, jeśli do tej pory nie ma komentarzy ?> <?php if ('open' == $post->comment_status) : ?>  <?php else : // komentarze są zamknięte ?>
Komentarze są zamknięte.
 <?php endif; ?> <?php endif; ?> Jednak pingbacki (no, nagłówek i wszystko) nadal się pojawiają, nawet jeśli nie ma pingbacków do wyświetlenia. Próbowałem to zmienić na coś takiego: <?php if ( have_comments() ) : ?> <?php if ( ! empty($comments_by_type['comment']) ) : ?>
 <?php comments_number('Brak komentarzy', '1 komentarz', '% komentarzy' );?>

 <?php wp_list_comments('type=comment&callback=mytheme_comment'); ?>
 <?php endif; ?> <?php if ( ! empty($comments_by_type['pings']) ): ?>
Trackbacki/Pingbacki

 <?php wp_list_comments( 'typ=ping'); ?>
 <?php endif; ?>
 <?php paginate_comments_links(); ?>
 <?php else : // to jest wyświetlane, jeśli do tej pory nie ma komentarzy ?> <?php if ('open' == $post->comment_status) : ?>  <?php else : // komentarze są zamknięte ?>
Komentarze są zamknięte.
 <?php endif; ?> <?php endif; ?> Jednak teraz nie pojawiają się ani pingbacki, ani komentarze, chyba że wyjmę polecenie "jeśli puste". Jeśli to zrobię, nagłówek pingbacku pojawi się ponownie, nawet jeśli nie ma pingbacków. To doprowadza mnie do szału! Może ma to związek z funkcją callback? Oto funkcja, którą wywołuję: function miteme_comment($komentarz, $args, $głębokość) { $GLOBALS['komentarz'] = $komentarz; ?> <li <?php comment_class('clearfix'); ?> id="li-comment-<?php comment_ID() ?>"> <?php echo get_avatar($comment,$size='63'); ?> <div id="comment-<?php comment_ID(); ?>">
 <?php printf(__('%s' ), get_comment_author_link()) ?><?php edit_comment_link(__(''),' ','') ?> <?php printf(__('%1$s @ %2$s'), get_comment_date('T/n/j'), get_comment_time('G:i')) ?>
 <?php comment_text() ?>

 <?php if ($comment->comment_approved == '0') : ?> <?php _e('Twój komentarz oczekuje na moderację.') ?>
 <?php endif; ?>
 <?php comment_reply_link(array_merge( $args, array('depth' => $depth, 'max_depth' => $args['max_depth'])))) ?>

 <?php } [Oto] przykładowa strona mojej witryny z komentarzami i pingbackami.1 Proszę, pomóż mi to rozgryźć. Dzięki wielkie!


title: Przeszukuj posty według niestandardowej taksonomii i sortuj według post_modified

text: Próbuję zakwestionować 5 postów w cpt 'wakat'. Zapytanie jest bardzo złożone. Najpierw potrzebuję postów należących do taksonomii niestandardowej o identyfikatorze 18 i posortowanych według 'post_modified', a następnie - wszystkie inne posty w cpt 'vacancy' również posortowane według 'post_modified'. A wszystko to ograniczone do 5 postów. Na razie używam: $query_hot = $wpdb->get_results("(SELECT * FROM wp_posts WHERE post_type = 'vacancy' AND post_status = 'publish' AND ID IN (SELECT object_id FROM wp_term_relationships WHERE wp_term_relationships.term_BY_18_modified) ORDERmy_id DESC) UNION (SELECT * FROM wp_posts WHERE post_type = 'vacancy' AND post_status = 'publish' AND ID NOT IN (SELECT object_id FROM wp_term_relationships WHERE wp_term_relationships.term_taxonomy_id = 18) ORDER BY post_modified DESC) LIMIT 5"); Odpytuje właściwe posty, ale nie sortuje według „post_modified”. Co robię źle?


title: Jak mogę ograniczyć dostęp użytkownika do wtyczek?

text: Stworzyłem nową rolę użytkownika w moim functions.php i ustawiłem wartości logiczne dla każdej standardowej możliwości Wordpressa (wymienionej w [Kodeksie Wordpress][https://codex.wordpress.org/Roles_and_Capabilities#unfiltered_upload]. Jak dotąd, rzeczy idę świetnie! Używam również trzech wtyczek Chciałbym, aby ten użytkownik również miał dostęp do tych wtyczek (Galeria Nextgen, Formularz kontaktowy 7 i SEO Ultimate). Jak to zrobić? Nie wiem jakie są możliwości tych wtyczek lub gdzie je znaleźć TL,DR: Chcę ustawić możliwości dla roli użytkownika, ale nie znam możliwości wtyczek Galeria NextGen, Contact Form 7 lub SEO Ultimate).


title: the_post_thumbnail('my_image_size') zawsze wyświetla pełny obraz

text: Opracowuję niestandardowy motyw, który używa kilku niestandardowych rozmiarów obrazów zdefiniowanych w moim functions.php w następujący sposób: add_theme_support('post-thumbnails'); add_image_size('polecany_kciuk', 175, 120, prawda); Następnie otrzymuję posty z bazy danych i wyświetlam je na stronie takiej jak ta: $featured=get_posts(); if ($polecane) { global $post; foreach($wyróżniony jako $post) { setup_postdata($post); the_post_thumbnail('polecany_kciuk'); } wp_reset_postdata(); } Ale ten kod zawsze wyświetla obraz w pełnym rozmiarze. Nie mogę zrozumieć, dlaczego - wszystko inne wydaje się działać dobrze (the_title(), the_permalink() itp.) i otrzymuje poprawny obraz, ale nie w żądanym rozmiarze. Czy ktoś wie, w jakich okolicznościach `the_post_thumbnail()` zignoruje rozmiar mojego obrazu lub co robię źle? Edycja: za pomocą WP 3.4.1


title: Jak dodać niestandardową stronę, używając ich w wordpressie 3.5

text: Zrobiłem to wcześniej w wordpressie 3.4, ale ten kod wydaje się nie działać. Dodaję ten kod do folderu `wp-content/themes/` i dodaję nową stronę z zaplecza i próbuję to wybrać. Ale to się nie pojawia, to dlatego, że nowa wersja.. czy robię to źle? <?php /* Nazwa szablonu: Strona tytułowa */ ?> <?php get_header(); ?> Oto moja strona tytułowa! <?php get_footer(); ?>


title: Jak importować pojedyncze posty z bloga do Wordpress?

text: Próbuję przenieść część treści z innej witryny do postów na blogu do pracy i potrzebuję trochę pomocy. Zasadniczo moim zadaniem jest parsowanie kilku plików do ich treści, umieszczenie ich w formacie, który Wordpress rozumie jako post na blogu i przesłanie ich. Problem polega na tym, że nie widzę dobrego sposobu na zrobienie tego — chciałbym mieć możliwość umieszczania pojedynczych postów na blogu w osobnych plikach, aby móc je przesyłać pojedynczo. Wszystko, co teraz widzę, to sposób na wzięcie pełnych blogów i załadowanie ich, co nie do końca jest tym, czego chcę. Szukam też dobrego formatu, w którym mógłbym to zrobić -- jestem w tym trochę nowy. Treść jest oryginalnie zwykłym tekstem, więc naprawdę mogę ją przeanalizować do dowolnego formatu. Nie jestem jednak pewien, który będzie najłatwiejszy do zbudowania, więc każda pomoc byłaby również świetna. Dziękuję Ci!


title: Idealne miejsce do przechowywania trwałych obiektów PHP

text: Piszę kilka wtyczek, które wykonują przetwarzanie wsadowe w tle, czyli operacje trwające dłużej niż 30 sekund. Tworzę obiekty z niezbędnymi parametrami zadania ustawionymi w ten sposób (jest to bardzo uproszczony przykład): class MyPlugin_Create_Terms { public $job_id; publiczne $warunki; taksonomia publiczna; publiczne $utworzone = 0; init funkcji publicznej ( $terms, $taksonomia ) { $this->job_id = uniqid(); $this->terms = $terms; $this->taksonomia = $taksonomia; zwróć $this->job_id; } public function do_job( $object_storage ) { foreach ( $this->terms as $term ) { wp_insert_term( $term, $this->taksonomia ); $to->utworzone++; $object_storage->save_object( $this->job_id, $this); } } } $create_terms = new MyPlugin_Create_Terms(); $job_id = $create_terms->init( $_POST['user_input_terms'], $_POST['user_input_taxonomy'] ); $object_storage = nowy MyPlugin_Object_Storage(); $object_storage->save_object( $job_id, $create_terms ); A w innym procesie: $object_storage = new MyPlugin_Object_Storage(); $create_terms = $object_storage->load_object( $job_id ); $create_terms->do_job( $object_storage ); Gdziekolwiek indziej: $object_storage = new MyPlugin_Object_Storage(); $create_terms = $object_storage->load_object( $job_id ); echo "Utworzyliśmy {$create_terms->utworzyliśmy} terminy."; Teraz problemem jest implementacja `Object_Storage`. Wymyśliłem następujące opcje przechowywania obiektów: 1. Stany nieustalone. Najwyraźniej nie zrobią tego, ponieważ nie mają gwarantowanego czasu życia (z buforowaniem, transjenty mogą nigdy nie zostać zapisane w bazie danych, jak się dowiedziałem). 2. Istniejące tabele DB. Serializowane obiekty PHP nie powinny być zapisywane w polach `text` MySQL, ponieważ mogą zawierać bajty `NULL` ((Miałem spektakularny błąd WSOD podczas serializacji obiektu z właściwością `protected` do tabeli usermeta) : > Zauważ, że to jest łańcuchem binarnym, który może zawierać bajty null i musi być > przechowywany i obsługiwany jako taki.Na przykład wyjście serialize() powinno być > ogólnie przechowywane w polu BLOB w bazie danych, a nie w polu CHAR lub > TEXT. - Podręcznik PHP: serialize() 3. Tworzenie własnej tabeli z polami typu `BLOB` do serializacji dowolnego obiektu lub alternatywnie przechowywanie danych obiektu bez serializacji. Czuje się jak przesada. Jakie są najlepsze praktyki? 4. Używanie systemu plików. Różne czynniki takie jak blokowanie, procesy atomowe i nieatomowe oraz uprawnienia do plików komplikują to.W szczególności, ponieważ będą dwa procesy uzyskujące dostęp do obiektu jednocześnie, występuje problem z warunkami wyścigu, gdy muszą spojrzeć na ten sam obiekt. ?Prob nieodpowiednie dla dwóch współbieżnych procesów. Wszelkie myśli będą mile widziane!


title: Błąd multimediów importu Wordpress

text: Opracowałem motyw i musiałem wyeksportować całą zawartość za pośrednictwem eksportera. Teraz, kiedy importuję je za pomocą wtyczki importera, posty itp. są importowane, ale podczas importowania mediów wystąpił błąd. Czy mógłbyś mi pomóc? Oto zrzut ekranu: ![](http://i.stack.imgur.com/ejfxt.png)


title: Zmień niestandardowy typ posta singular_name za pomocą funkcji/filtra

text: Pracuję nad stroną e-commerce używając wtyczki woocommerce. Mój klient będzie sprzedawał bilety online. Wtyczka woocommerce tworzy niestandardowy typ posta „Produkt”. Chcę zmienić ten cpt singular_name na „Ticket” (tylko kosmetyczna zmiana) Nie mam nic przeciwko utrzymywaniu cpt slug na „product”, ponieważ wymaga to innych funkcji woocommerce? ![cpt_product](http://i.stack.imgur.com/rXyVo.png) Czy w wordpressie jest dostępna jakaś funkcja/filtr do zmiany niestandardowego typu postu singular_name poprzez funkcję/filtr


title: Rejestrowanie menu z zaznaczoną opcją „Automatycznie dodawaj nowe strony najwyższego poziomu do tego menu”

text: Czy można zarejestrować menu w pliku funkcji motywu i wstępnie wybrać opcję „Automatycznie dodawaj nowe strony najwyższego poziomu do tego menu”? Nie mogę znaleźć żadnych informacji na ten temat w dokumentacji register_nav_menus.


title: Zmodyfikuj filtr postów, aby ustawić niestandardową liczbę postów na stronie i wykluczyć posty podrzędne

text: Mam niestandardowy typ wpisu o nazwie „galerie”, który jest hierarchiczny. Używam funkcji w moim pliku functions.php, aby zmienić liczbę postów wyświetlanych na stronie do 48. Ta część działa dobrze, ale potrzebuję jej również, aby wykluczyć wszystkie posty podrzędne, tak aby tworzyły się tylko posty nadrzędne najwyższego poziomu 48 postów wciągniętych na stronę. Oto aktualny kod: function projekty_niestandardowa_liczba_postów( $query ) { if ( is_admin() || ! $query->is_main_query() ) return; if ( is_post_type_archive( 'galerie' )) { // Wyświetl 48 postów dla niestandardowego typu posta o nazwie 'galerie' $query->set( 'posts_per_page', 48 ); zwrócić; } } add_action( 'pre_get_posts', 'projects_custom_number_of_posts', 1 ); Jak mogę zmodyfikować komponent `$query->set`, aby również ograniczyć posty tylko do postów nadrzędnych najwyższego poziomu? Próbowałem następujących, ale zgłasza błąd: function project_custom_number_of_posts( $query ) { if ( is_admin() || ! $query->is_main_query() ) return; if ( is_post_type_archive( 'galleries' )) { // Wyświetl 48 postów dla niestandardowego typu posta o nazwie 'galerie' $query->set( array ('posts_per_page'=>48, 'post_parent'=>0) ); zwrócić; } } add_action( 'pre_get_posts', 'projects_custom_number_of_posts', 1 );


Do czego służy folder wordpress wp-includes? To znaczy, jaki jest jego podstawowy cel architektoniczny, na przykład dlaczego nie jest to wszystko w motywach lub folderze administratora? Czy deweloper wtyczki może polegać na jej zawartości (np. jQuery) i na jak długo? Chciałbym również wiedzieć, kto decyduje o tym, co się tam dzieje i jak jest to utrzymywane w miarę zmian w Wordpress, czy wszystko to jest gdzieś udokumentowane jako dokument polityczny?


title: Budowanie wtyczki: użyj wartości offsetu, zapisz do bazy danych, wywołaj wartości na stronie głównej w pętli

text: Po raz pierwszy opublikowałem to na StackOverflow, ale teraz zdaję sobie sprawę, że prawdopodobnie jest to bardziej odpowiednie dla tej witryny. _Zaktualizowano 26.02.2014_ Już wiem, że to pytanie będzie dość rozbudowane, więc dla każdego, kto zechce spróbować czegoś, aby mi pomóc: wystawię nagrodę tak szybko, jak będę mógł. ## Przypadek Pętla (strona główna) mojej witryny wygląda tak. (Oddalony, aby uzyskać lepszy przegląd) ![Strona główna](http://stackoverflow.com/questions/22024587/extensive-use-of-jquery-ui-draggable-then-save-an-image-and-use-in -wordpress) Jak widać, jest to zwykły „blogowy” strumień postów z tytułem, kilkoma metainformacjami, miniaturą („polecany obraz”) i fragmentem. Opakowanie (nadrzędne) obrazu miniatury jest ograniczone do 658 pikseli szerokości i 120 pikseli wysokości. Sam obraz ma `max-width: 100%`, więc nigdy nie będzie szerszy niż jego rodzic. W kodzie wygląda to mniej więcej tak: .entry-thumbnail { max-height: 120px; przelew: ukryty; margines-dolny: 1em; } .entry-thumbnail img { wysokość: auto; maksymalna szerokość: 100%; margines: 0 auto; } Działa to całkiem dobrze, jeśli zawartość samego obrazu znajduje się na górze. Jednak gdy górna część obrazu jest raczej pusta, miniatura również wygląda na pustą. Dzieje się tak, ponieważ pokazywane jest tylko górne 120 pikseli obrazu. Pozostałe piksele są „odcinane” z powodu „przepełnienia: ukryte”, które znajduje się na jego rodzicu. Jako przykład widać, że na górze jest zbyt dużo białej przestrzeni. ![Za dużo spacji](http://i.stack.imgur.com/kipBC.png) ## Rozwiązanie **EDIT 1** : odpowiedź udzielona przez D. Kasipovicia daje dobry nowy wgląd. Zamiast zapisywania dwóch oddzielnych obrazów (pełnej miniatury i jednego przyciętego), powinno być możliwe zapisanie przesuniętych pozycji obrazu. W ten sposób wartości te można wstawić dla każdego obrazu na pierwszej stronie bez konieczności używania wielu obrazów. **EDIT 2** : Edytowałem skrzypce. Teraz wartość widoczna w polu wejściowym (`#offset-val`) zmienia się za każdym razem, gdy zmienia się położenie obrazu. Reprezentowana wartość jest wartością względem swojego rodzica. Idealnie ta wartość jest zapisywana w bazie danych (i nadpisywana po zmianie), a po wywołaniu miniatura otrzymuje wartość css `top:X`, w którym to przypadku `X` oznacza wartość, która jest w bazie danych. ## Czego próbowałem do tej pory Najpierw zastanawiałem się, jak mogę zrobić przeciągany obraz i tak dalej. (Por. wyżej wymienione skrzypce). To działa dobrze. Zajrzałem do płótna i zapisałem płótno do obrazu, aby zapisać obraz. Jednak nie tego potrzebuję. Skończyłem grać na skrzypcach. Teraz pozostaje już tylko zapisanie wartości pola wejściowego do bazy danych i podpięcie tej wartości do funkcji `the_post_thumbnail` (z filtrem?) tak, że gdy na stronie tytułowej zostanie do niej przekazany dodatkowy argument, a mianowicie ` style="top:X;"` wartość. ## Co należy zrobić/cel * (Zakończ z wtyczką Wordpress) * Zapisz wartość do bazy danych (i nadpisz po zmianie) * W pętli wartość powinna być zaimportowana jako wartość X `top` wewnątrz `style `-tag * Albo `the_post_thumbnail()` należy zmienić tak, aby wstawić `style="top=X;"`, tylko w pętli na stronach archiwum lub na stronie głównej Proszę powiedzieć, jeśli coś jest niejasne. To jasne w mojej głowie, ale trudno to wyrazić słowami.


title: prześlij wiele obrazów do administratora wordpress i utwórz post

text: Stworzyłem wtyczkę z nową stroną w obszarze administracyjnym. Tutaj chciałbym stworzyć funkcję, dzięki której obrazy mogą być przesyłane, a dla każdego obrazu tworzony jest post (z niestandardowymi danymi pola meta). Otrzymałem ten formularz html: <label for="upload_image"> <input id="upload_image_button" class="button" type="button" value="Prześlij obraz" /> i otrzymałem ten kod javascript: ` jQuery(document ).ready(function($){ var custom_uploader; $('#upload_image_button').click(function(e) { e.preventDefault(); //Jeśli obiekt uploader został już utworzony, otwórz ponownie okno dialogowe, jeśli (custom_uploader ) { custom_uploader.open(); return; } //Rozszerz obiekt wp.media custom_uploader = wp.media.frames.file_frame = wp.media({ title: 'Wybierz obrazy', button: { text: 'Wybierz obrazy' }, multiple: true }); //Gdy plik jest zaznaczony, pobierz adres URL i ustaw go jako wartość pola tekstowego custom_uploader.on('select', function() { var selection = custom_uploader.state().get( 'selection'); selection.map(function(attachment) { attachment = attachment.toJSON();// Zrób coś innego z obiektem załącznika $('#upload_response').html(attachment.url);//$(' #upload_image').val(attachment.url); }); }); //Otwórz th e okno dialogowe przesyłania custom_uploader.open(); }); }); ` Jak mogę teraz zaimplementować funkcję, która tworzy post dla każdego obrazu i przechowuje na przykład adres URL obrazu w niestandardowej meta postu? dzięki za pomoc!


title: Używanie niestandardowego typu postu jako stronicowania strony głównej nie działa

text:
Szukałem rozwiązania przez wiele dni, przeszukując interweby, w tym oczywiście stackoverflow. Używam niestandardowego typu postu jako statycznej strony głównej, ale paginacja nie będzie działać. Kiedy próbuję przejść do drugiej strony, wracam do tej samej pierwszej strony. To nie jest problem, chyba że używam go jako statycznej strony tytułowej. Oto kod, który ustawiłem. <?php $numer_domu = get_option('numer_domu'); ?> <?php query_posts( 'post_type=portfolio&posts_per_page='.$home_num.'&paged='.$paged); ?> <?php if (have_posts()) : while (have_posts()) : the_post(); ?> ... zawartość ... <?php endwhile; ?> <?php else: ?>
<?php _e('Przepraszam, nic tutaj.', 'Zoho'); ?>
 <?php endif; ?> <?php if (function_exists("paginacja")) { pagination($additional_loop->max_num_pages); } ?> <?php wp_reset_query(); ?> Wiem, że funkcja stronicowania działa dobrze, ponieważ używałem jej wiele, wiele razy wcześniej. Cieszę się, że mogę przekazać darowiznę każdemu, kto może w tym pomóc. Jak powiedziałem, utknąłem :)


title: Historia zmian dla całej witryny Wordpress

text: Uczę się wordpress i pracuję nad stroną wordpress, gdzie chciałbym mieć historię zmian dla każdej wprowadzanej przeze mnie zmiany. Rozumiem, że możesz zobaczyć historię zmian stron i postów, ale co z niestandardowymi plikami css + php? Mam pewne doświadczenie w korzystaniu z git i github, więc staram się zapisywać każdą zmianę, którą wprowadzam na mojej stronie. Posiadanie kontroli wersji nie jest konieczne, chciałbym tylko zobaczyć każdą edycję, którą wprowadziłem do pliku. Używam programu Dreamweaver do edytowania plików lub edytowania plików w wp-admin w witrynie Wordpress. **AKTUALIZACJA: Zmieniłem pytanie** Pytanie: Czy mimo to istnieje możliwość posiadania kontroli wersji/historii wersji bez używania Git i posiadania wielu konfiguracji Wordpress dla tej samej witryny? (przykład: nie potrzebuję trybu Dev, trybu produkcyjnego ani gałęzi) -Git wydaje się zbyt skomplikowany jak na to, co chcę zrobić **AKTUALIZACJA: Znowu zmieniłem pytanie** Mogę poradzić sobie z gałęziami git, ale Chciałbym mieć możliwość, aby git na serwerze automatycznie przesyłał wszelkie zmiany do repozytorium, gdy umieszczam plik na serwerze w Dreamweaver.


title: Problem z wieloczęściowym/sformatowanym zapytaniem MySQL

text: Tworzę wtyczkę i chcę zautomatyzować tworzenie wyzwalacza MySQL na tabeli. Wydaje się, że problem polega na tym, że $wpdb->query nie akceptuje instrukcji wieloczęściowych i/lub sformatowanych zapytań. Jeśli wydrukuję i uruchomię następujące zapytanie w phpMyAdmin, zwróci sukces. Zauważyłem również, że jeśli sformatuję zapytanie w całości w wierszu 1, nadal będzie zgłaszać sukces, ale w tym przypadku wyzwalacz NIE jest tworzony. $wpdb->query( "DELIMITER // DROP TRIGGER IF EXISTS {$wpdb->get_blog_prefix($site->id)}post_queue_insert// CREATE TRIGGER {$wpdb->get_blog_prefix($site->id)}queue_insert PRZED WSTAWIENIEM NA {$wpdb->get_blog_prefix($site->id)}postach DLA KAŻDEGO WIERSZU ROZPOCZNIJ WSTAWIANIE W {$wpdb->base_prefix}post_queue (action_id, action_type, action_status, action_timestamp, sync_complete, SITE_ID) WARTOŚCI (NOWOŚĆ.ID, NOWOŚĆ .post_type, NEW.post_status, UNIX_TIMESTAMP(now()), 0, {$site->id});END// DELIMITER ;" ); Czy istnieje inna funkcja, której mogę użyć, lub inny sposób na sformatowanie zapytania w celu pomyślnego uruchomienia?


title: Problem źródłowy dla obrazu strony dla dzieci

text:
Mam ten problem i może możesz mi pomóc. Chcę uzyskać listę wszystkich stron podrzędnych ze strony (o identyfikatorze 20), a następnie pobrać wyróżniony obraz z każdej z nich i zmienić rozmiar za pomocą miniatury. W tej chwili otrzymuję the_title z każdego z nich, ale nie z obrazu, więc myślę, że jest problem ze źródłem. oto kod: <?php $args = array ( 'child_of' => 20, 'title_li' => '', 'depth' => 0, 'sort_order' => 'DESC', 'sort_column' => 'menu_order ' ); $strony = get_pages( $args ); foreach($strony jako $strona) : setup_postdata($post); $src = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), false, '' ); $thumbnailSrc = $src[0]; ?> <li id="<?php echo $page->nazwa_postu; ?>">
<a href="<?php echo get_page_link($page->ID) ?>"><?php echo $ page->post_title ?>
 <img src="<?php bloginfo('template_directory'); ?>/scripts/timthumb.php?src=<?php echo $thumbnailSrc; ?>&h =256&w=415&zc=1q=100" /> <?php endforeach; ?>


title: Dodaj niestandardowe czytaj więcej do the_excerpt i <--more-->

text: Moje dzisiejsze pytanie brzmi... czy jest jakiś sposób na automatyczne dodanie niestandardowego (cokolwiek chcę) Czytaj więcej... za każdym razem, gdy używam funkcji the_excerpt lub get_the_excerpt??? Z góry dziękuję


title: nieskończone przewijanie nie działa po wylogowaniu

text:
**Problem:** nieskończona pętla działa tylko wtedy, gdy użytkownik jest zalogowany, a następnie pokazuje posty, które nie zostały jeszcze opublikowane. Kiedy się wyloguję, nieskończony zwój już nie działa. **Ustawienie:** Mam następującą niestandardową funkcję pętli nieskończonej: add_action('wp_ajax_zephyr_infinite_scroll', 'zephyr_get_nextpage'); function zephyr_get_nextpage() { $loopFile = $_POST['loop_file']; $paged = $_POST['page_no']; $vv = stripslashes($_POST['vars']); $vars = json_decode($vv, true); $vars['paged'] = $paged; globalne $izmy; globalne $zephyr_post_columns; $zephyr_post_columns = $vars['columns']; unset($vars['kolumny']); $isms = $_POST['mas']; zapytanie_posty($zmienne); globalne $wp_query; if ( $wp_query->found_posts == 0 ) { echo 0; } else { get_template_part( 'szablony/'.$loopFile ); }         Wyjście; } Następnie mam w swoim pliku `loop.php`: <?php global $zephyr_cont; globalny układ $zephyr_post_layout; globalne $zephyr_i; globalne $izmy; globalne $zephyr_post_columns; $zefir_i = 0; if ( have_posts() ): while ( have_posts() ): the_post(); ?> <?php if ( $isms == 'prawda' ) { $zephyr_i++; get_template_part( 'szablony/post', 'murarstwo'.get_post_format() ); } else { get_template_part( 'szablony/post', get_post_format() ); } koniec; else : ?>
<?php _e('Nie znaleziono postów, przejdź', 'zephyr'); ?> <a href="<?php echo home_url(); ?>" title="<?php bloginfo('name'); ?>"><?php _e('home', 'zephyr'); ?>?
 <?php endif; ?> I plik `script.js`: function loadArticle(pageNumber) { $('#ajaxload').fadeIn(300); $.ajax({ url: Zephyr.ajaxurl, type:'POST', data: { action : 'zephyr_infinite_scroll', page_no : pageNumber, loop_file : 'loop', vars : Zephyr.queryvars, mas : isms }, success: function (html){ if ( html !== '0' ) { if ( isms ) { $zephyr_container.isotope( 'insert', $(html) ); } else { $(html).hide().appendTo(' #content').fadeIn('300'); } layoutSidebar(ms); } else { noload = 1; } $('#ajaxload').fadeOut(300); } }); zwróć fałsz; }


title: Utwórz ślimak dla strony w WordPress

text: Jak mogę utworzyć ślimak dla strony w WordPressie? Widzę, że dostępne są formaty niestandardowe, ale chciałbym móc określić takie rzeczy, jak: mojadomena.com/o mojadomena.com/dom mojadomena.com/portfolio itp. Czy istnieje wtyczka lub technika, której mógłbym użyć do wykonania ten?


title: Wyciągnij zaawansowane pola niestandardowe w wtyczce powiązanego posta

text:
Używam wtyczki Advanced Custom Fields i postów związanych z microkid. Chciałbym wyświetlić moje niestandardowe pola w Powiązany wpis. To jest to, co mam do tej pory? <?php //powiązane dzieła sztuki $related = MRP_get_related_posts( $post->ID, true, false, 'quote_list' ); //do testowania powiązanej tablicy //print_r ($related); if(!empty($powiązany)) { foreach($powiązany jako $klucz => $wartość) { $powiązany = get_post($wartość); $related_id=$related->ID; $related_content=$related->post_excerpt; $related_url=$related->get_permalink; echo "

".get_the_title($related_id)."

"; //echo get_the_post_thumbnail($related_id); echo "".$related_content."

"; echo "czytaj więcej"; //do testowania powiązanej tablicy //print_r ($related); } }?> Ale jak mam wyciągnąć moje zaawansowane pole niestandardowe? Wielkie dzięki,


title: Losowy identyfikator dla niestandardowego typu postu

text: Robię testy z niestandardowymi typami postów. Załóżmy, że mam różne szablony stron i niestandardowy szablon typu postu, które udostępniają jeden plik footer.php. W stopce wywołuję `do_dis_function()`, który jest po prostu zdefiniowany jako: function do_dis_function() { global $post; dowód osobisty(); // echo pobierz_identyfikator(); // echo $post->ID; } W obu przypadkach w szablonie strony i/lub CPT wyświetla się identyfikator... ale tylko w szablonie strony jest spójny. Po dalszych testach zdaję sobie sprawę, że jeśli przeglądam niestandardowy szablon typu postu, powtarzany identyfikator, który na pierwszy rzut oka wydaje się przypadkowy, wygląda na identyfikator z wpisu niestandardowego typu postu, który ma tę samą kategorię. Więc żeby to rozbić, mam 5 projektów, 2 kategorie. 3 projekty należą do tej samej kategorii. Ich identyfikatory to 16, 22 i 41. Jeśli przeglądam post 22, odbity identyfikator to 16 lub 41. Dafuq. Niech ktoś wyjaśni.


title: Nie mogę zmienić autora na siebie po opublikowaniu posta

text: Mam dziwny problem, w którym jeśli utworzę i opublikuję post, mogę / jestem przypisany jako autor. Jeśli jednak mój redaktor utworzy post i spróbuje dodać mnie jako autora, nie pojawiam się. To nie działa, nawet jeśli wejdę po tym, jak ona skończy edycję i spróbuję zostać autorem. Nadal nie pojawiam się na liście rozwijanej. Masz pomysł, co może być tutaj problemem? Czy mogę podać więcej informacji/zrzutów ekranu?


title: Inny katalog przesyłania w zależności od typu posta w motywie

text: Mam wiele przesłanych plików graficznych i rozmiarów obrazów. Dlatego lepiej byłoby organizować pliki multimedialne w folderach na podstawie typu posta. Właśnie przeczytałem ten samouczek, ale jak widzę, działa z wtyczkami. Jak to zmienić, aby użyć w motywie? Dziękuję. function custom_upload_directory( $args ) {          $id = $_REQUEST['post_id']; $parent = get_post($id)->post_parent; // Sprawdź typ posta bieżącego posta     if( "post-type" == get_post_type( $id ) || "post-type" == get_post_type( $parent ) ) {         $args['path'] = plugin_dir_path (__PLIK__) . „przesyłane”; $args['url']  = katalog_wtyczki_url(__FILE__) . „przesyłane”; $args['basedir'] = plugin_dir_path(__FILE__) . „przesyłane”; $args['baseurl'] = katalog_wtyczki_url(__FILE__) . „przesyłane”; }     zwróć $args; } add_filter( 'katalog_przesyłania', 'niestandardowy_katalog_przesyłania' );


title: wp_update_post przyklejanie mojego posta

text: Aktualizuję swój post za pomocą poniższego kodu: $post_information = array( 'ID' => $_REQUEST['ID'], 'post_content' => $_REQUEST['content'], 'post_status' => 'publish' ); wp_update_post($post_information); Ale kiedy aktualizuję mój post, powoduje to również przyklejenie mojego posta. Proszę powiedz mi, jak zaktualizować mój post, aby był przyklejony.


title: Artykuły WP_Query uporządkowane według przesunięcia w kolumnach

text:
Poniższy kod chce pokazać listę artykułów w dwóch kolumnach. <?php $i = 0; $the_query = nowe WP_Query( 'showposts=35&offset=0' ); while ($the_query -> have_posts()) : $the_query -> the_post(); $i++; ?> <?php if ($i == "1") { ?>
 <?php the_title(); ?> <?php } ?> <?php if (in_array($i, array(3,4,5,6,7,8,9,10))) { ?> <?php tytuł_(); ?> <?php } ?> <?php if ($i == 10) { ?>
 <?php } ?> <?php if ($i == "2") { ?>
 <?php the_title(); ?>
 <?php } ?> <?php endwhile;?> Problem polega na tym, że artykuł z $i = 2 pojawia się poniżej artykuł z $i = 1. To nie jest kolejność, której użyłem w powyższym kodzie . Jak mogę ułożyć artykuły w tej kolejności? PS: moje artykuły z $i=2 również pojawiają się w pierwszej kolumnie (wyrównane do lewej), ponieważ `</div>` po artykule z $i=10. Jeśli masz jakieś pytania lub nie rozumiesz, jestem tutaj. EDYCJA: Mój kod: <?php $the_query = new WP_Query( 'showposts=35&offset=0' ); while ($the_query -> have_posts()) : $the_query -> the_post(); $tytuły[] = pobierz_tytuł(); $wyciągi[] = get_the_excerpt(); koniec; ?> Aby wyświetlić pierwszy artykuł: <?php echo $titles[0]; echo "
"; echo $fragmenty[0]; ?> Czy powyższy kod jest odpowiedni dla szybkości serwera?