title: Pobieranie tylko niestandardowych typów postów z dwoma wymaganymi terminami (z różnych niestandardowych taksonomii)?

text:
Stworzyłem jeden niestandardowy typ postu i dwie niestandardowe taksonomie. register_post_type('blocks',array( 'labels' => array( 'name' => __( 'Bloki' ), 'singular_name' => __( 'Block' ), 'add_new_item' => 'Dodaj nowy blok', 'edit_item' => 'Edytuj blok', 'new_item' => 'Nowy blok', 'search_items' => 'Wyszukaj blok', 'not_found' => 'Nie znaleziono bloku', 'not_found_in_trash' => 'Nie znaleziono bloków w koszu', ), 'public' => true, 'hierarchical' => false, 'taksonomie' => array( 'sekcja'), 'supports' => array('title','editor','thumbnail' ,'custom-fields'), 'rewrite' => array('slug'=>'blocks','with_front'=>false), )); register_taxonomy('location','blocks',array( 'hierarchical' => true, 'labels' => array( 'name' => __( 'Location' ), 'singular_name' => __( 'Location' ), 'add_new_item' => 'Dodaj nową lokalizację', 'edit_item' => 'Edytuj lokalizację', 'new_item' => 'Nowa lokalizacja', 'search_items' => 'Wyszukaj lokalizację', 'not_found' => 'Nie znaleziono lokalizacji ', 'not_found_in_trash' => 'Nie znaleziono lokalizacji w koszu', 'all_items' => __( 'Wszystkie sekcje' ), ), 'query_var' => true, 'rewrite' => array( 'slug' => ' Lokalizacja' ),            )); register_taxonomy('section','blocks',array( 'hierarchical' => true, 'labels' => array( 'name' => __( 'Sekcja' ), 'singular_name' => __( 'Sekcja' ), 'add_new_item' => 'Dodaj nową sekcję', 'edit_item' => 'Edytuj sekcję', 'new_item' => 'Nowa sekcja', 'search_items' => 'Szukaj sekcji', 'not_found' => 'Nie znaleziono sekcji ', 'not_found_in_trash' => 'Nie znaleziono sekcji w koszu', 'all_items' => __( 'Wszystkie sekcje' ), ), 'query_var' => true, 'rewrite' => array( 'slug' => ' Sekcja' ),            )); Aby je pobrać, używam następującego: <?php // Utwórz i uruchom niestandardową pętlę $custom_posts = new WP_Query(); $custom_posts->query('post_type=blocks&location=Strona przednia&section=Profil'); while ($custom_posts->have_posts()) : $custom_posts->the_post(); ?>
 <?php the_post_thumbnail('duży'); ?>
 <?php endwhile; ?> <?php // Tworzenie i uruchamianie niestandardowej pętli $custom_posts = new WP_Query(); $custom_posts->query('post_type=blocks&location=Strona przednia&section=Motyw po lewej'); while ($custom_posts->have_posts()) : $custom_posts->the_post(); ?>
 <a href="<?php the_permalink(); ?>" title="<?php printf( esc_attr__( 'Permalink do %s', 'dwadzieścia' ), the_title_attribute ( 'echo=0' ) ); ?>" rel="zakładka"><?php the_post_thumbnail(); ?>
<?php the_fragment(); ?>

 <?php endwhile; ?> Problem polega na tym, że wszelkie posty z niestandardową taksonomią Location = Front Page pojawiają się w pierwszej niestandardowej pętli. Nie powinno. Pierwsza niestandardowa pętla powinna pobierać TYLKO niestandardowe posty, które zawierają te dwa terminy (z różnych taksonomii): Lokalizacja = Strona główna i Sekcja = Profil. (Jeśli brakuje tylko jednego terminu, posty nie powinny być pobierane) Jakieś sugestie?


title: Zmień motyw na podstawie rozmiaru okna

text: Chcę wysłać informacje o przeglądarce (szerokość okna) do serwera za pośrednictwem AJAX. Serwer nie musi odpowiadać żadnymi danymi, jednak zmień tylko motyw w oparciu o tę szerokość okna. Oto moja próba: **javascript** var $ = jQuery; $(document).ready(function() { var windowWidth = $(window).width(); var windowHeight = $(window).height(); $.ajax( { type: "POST", url: ". ../wp-admin/admin-ajax.php", data: { action: 'ajax_action', windowWidth: windowWidth, }, success: function(data, textStatus, XMLHttpRequest) { alert('success' + data); / / może się nie przydać }, error: function(XMLHttpRequest, textStatus, errorThrown) { alert(errorThrown); } }); }); **functions.php** function mmf_enqueue_scripts() { if( !is_admin() ): wp_enqueue_script('winsize-detect'); endif; } add_action( 'wp_print_scripts', 'mmf_enqueue_scripts' ); function ajax_action() { if( isset( $_POST['windowWidth'] ) ) { return $_POST['windowWidth']; } zwróć 0; } function mmf_change_theme($theme) { // aby AJAX działał tylko przed tą funkcją add_action('wp_ajax_ajax_action', 'ajax_action'); add_action ('wp_ajax_nopriv_ajax_action', 'ajax_action'); $szerokość = ajax_action(); if( $szerokość == 320 ) { $temat = 'dwadzieścia dwanaście'; // jeśli powtórzę szerokość tutaj, otrzymam: 3203203203200 (if width=320) } else { $theme = 'twentythirteen'; // jeśli powtórzę szerokość tutaj, otrzymam: 7707707707700 (jeśli szerokość=770) } return $theme; } add_filter('szablon', 'mmf_change_theme'); add_filter('option_template', 'mmf_change_theme'); add_filter('option_stylesheet', 'mmf_change_theme'); Trudno mi poradzić sobie z faktem, że funkcja `mmf_change_theme` jest podpięta, więc jest wywoływana 3 razy. Albo analizuję źle. Jak byś to zrobił? Albo jak poprawić mój kod. Również mile widziane są opinie na temat takiej metody obsługi różnych motywów w zależności od rozmiaru przeglądarki okna. Wolę nie używać wtyczki, którą znam. Dziękuję.


Otrzymuję następujący błąd, gdy próbuję uzyskać dostęp do mojej witryny Wordpress. Wcześniej działał całkiem dobrze. Czy ktoś mógłby mi w tym pomóc. > Nie znaleziono pliku konfiguracyjnego ani kodu instalacyjnego. Wyjście...


title: Filtr narzędzia do przesyłania Wordpress 3.5+

text: Chciałbym użyć zupełnie nowego narzędzia przesyłania wp na osobistej stronie opcji motywu. Znalazłem wiele samouczków, takich jak: wp media uploader w wtyczkach ... i działa bardzo dobrze. Ale chciałbym filtrować typ pliku, który użytkownik końcowy może wybrać (i wyświetlić). Znalazłem wiele przykładów, które używają tego sposobu do filtrowania według typu 'image' ( param for wp.media object ): library:{ type:'image' } Przykład możesz zobaczyć tutaj. To działa, gdy pojawi się panel przesyłania, widzisz tylko zdjęcia, ALE: * Jak mogę filtrować inne typy plików (dokumenty, zipy, filmy...), próbowałem zastąpić 'obraz' przez 'wideo' lub 'dokument', tak się nie stało nie działa * Gdy użytkownik końcowy zdecyduje się przesłać plik , może przesłać dowolny typ pliku zamiast obrazu Jak mogę to naprawić ? Jak ustawić filtr dla jednego lub więcej określonych typów plików? Wielkie dzięki za pomoc.


title: Usuń kategorie / tagi z menu administratora

text: Chcę usunąć / ukryć podmenu Kategorie / Tagi w sekcji Posty w menu administratora. Wiem, że to działa z podmenu motywów: `remove_submenu_page('themes.php', 'widgets.php');` ale to samo nie działa w przypadku postów: `remove_submenu_page('edit.php', 'edit-tags .php');` Używam akcji admin_menu: `add_action('admin_menu', 'function_call')` Czy muszę coś jeszcze dodać?


title: Kontrola motywu: nie można znaleźć post_class

text: Motyw odziedziczyłem od innego programisty, którego styl zmieniłem dla klienta. Już prawie skończyliśmy, ale pomyślałem, że przepuszczę go przez wtyczkę Theme-Check, aby sprawdzić, czy są jakieś błędy lub problemy. Niestety jest ich mnóstwo. Usunąłem większość z nich, ale został mi jeden Wymagane: WYMAGANE: Nie można znaleźć post_class. Zobacz: post_class Przeczytałem stronę WP na temat post_class, ale jako względny nowicjusz nadal nie rozumiem, co to jest, ani dlaczego powinno być _wymagane_. Co powinienem zrobić, aby to naprawić?


title: Pobranie określonej wartości z tablicy za pomocą get_attached_media

text: Próbuję napisać fragment kodu, który pobiera link do adresu URL/pobierania dowolnych osadzonych plików audio w bieżącym poście. Robiąc to, natknąłem się na get_attached_media, które wyświetlało coś takiego (usunąłem niektóre wartości, aby było krótkie): Array ( [172] => WP_Post Object ( [ID] => 172 [post_author] => 1 [guid] => http://localhost/wp-content/uploads/2013/07/03-take_me_out_128_lame_cbr_ex.mp3 [menu_order] => 0 [post_type] => załącznik [post_mime_type] => audio/mpeg ) ) Jak ty można powiedzieć, że wszystko jest zapakowane w ten "WP_Post Object". Teraz jestem pewien, że to wszystko jest powszechne i dość proste do rozwiązania, ale nie wiem, jak to zrobić. Zasadniczo to, co chcę zrobić, to pobrać wartość „GUID” i dołączyć ją do zmiennej, ponieważ wydaje się, że zawiera ona adres URL osadzonego pliku audio posta. Proszę również poprawić moją terminologię, abym mógł uczynić to pytanie bardziej przydatnym dla innych, którzy mogą szukać odpowiedzi na to pytanie.


title: Po zmianie katalogu głównego witryny, jak to odzwierciedlić również dla wp-admin?

text: Struktura plików mojej witryny wygląda następująco: index.php pliki wp/wp ... Ogólnie w adresie witryny (URL) mam ...site.com W index.php mam: define('WP_USE_THEMES', true); wymagać('./wp/wp-blog-header.php'); Wszystko działa dobrze, ale dla wp-admin mam ...site.com/wp/wp-admin/ Moje pytanie brzmi: Czy mogę zmienić adres URL dla wp-admin, aby mieć również ...site.com/wp-admin/ ?


title: Czy the_category może wyświetlać liczbę postów?

text: Czy możliwe jest, aby kategoria_kategoria wyświetlała liczbę postów w poście. Wygląda na to, że opublikowano w: Nazwa kategorii (3), Nazwa kategorii (2) itp. itd. Możliwe czy nie? Po prostu użyłbym wp_list_categories, ale musi pojawiać się na podstawie postu po poście, tak jak ten post jest publikowany w kategorii x i y, a nie tylko wszystkie ...


title: Dlaczego ten kod WPDB zgłasza pusty błąd WPDB?

text: Piszę wtyczkę czytnika kanałów dla wordpress. Widzę błąd DB, którego nie mogę rozgryźć. Najpierw tworzę tabelę o nazwie user_entries. Następnie umieściłem przykładowy wpis w tej tabeli. Kiedy próbuję usunąć wpis, w moim dzienniku debugowania pojawia się bardzo dziwny błąd. Nie ma jeszcze kluczy obcych, żadnych indeksów w bazie itp. > [02-maj-2012 11:21:52] Błąd bazy danych WordPress dla zapytania DELETE FROM > wp_wprss_user_entries > WHERE owner_uid = 2 AND feed_id = 2; wykonane przez do_action, > call_user_func_array, wprss_unsubscribe_feed, WprssFeeds->remove Więc jaki jest błąd? Tam jest po prostu pusta. Nie wygląda to na skomplikowany SQL i działa dobrze w oknie zapytań phpmyadmina. Nie wiem, co zrobić w następnym kroku, i chciałbym, aby ludzie mogli zrezygnować z subskrypcji kanału!


title: Usuń Slug z niestandardowego typu postu

text: Zastanawiałem się, jak mogę usunąć prefiks z slugów niestandardowych typów postów za pomocą reguł htaccess lub innej odpowiedniej metody. Obecnie moje niestandardowe typy postów wyglądają tak: http://www.domain.com/os_estate/5-bedroom-property-for-sale i po prostu chciałbym, żeby to było: http://www.domain.com/5 -bedroom-property-for-sale Udało mi się to osiągnąć za pomocą wtyczki, ale znacznie wydłużyło to czas ładowania strony.. Moje wspólne ustawienia w Permalinkach to "Nazwa posta"


title: Jak obsłużyć wiele wystąpień funkcji js „send_to_editor”?

text:
Oto, co robię: dodałem przesyłanie multimediów Wordpress z wyskakującym okienkiem iframe po kliknięciu przycisku lub linku. A po kliknięciu wstaw do posta adres URL obrazu umieszczony w polu tekstowym. Funkcja **`send_to_editor()` obsługuje wstawianie obrazu do edytora** window.send_to_editor = function(html) { var imgurl = jQuery('img',html).attr('src'); current_item.siblings('.upload_image').val(imgurl); current_item.parent().prepend('

'); tb_usuń(); } Tak więc widzisz, że domyślny send_to_editor jest edytowany i zmieniany. Teraz, gdy próbuję przesłać obraz z przesłanego obrazu edytora wordpress i kliknij wstaw obraz, aby opublikować. To nie działa. **Pytanie:** Jak mogę wielokrotne instancje `send_to_editor()` lub parhaps tworząc i podłączając nową funkcję js do każdej chwili wgrywania obrazu, aby nie powodowały konfliktu? **Rozwiązanie:** var original_send_to_editor = window.send_to_editor; window.send_to_editor = function(html) { var imgurl = jQuery('img',html).attr('src'); current_item.siblings('.upload_image').val(imgurl); //bieżąca_pozycja.siblings('#logo').remove(); current_item.siblings('.image-preview').html(''); tb_usuń(); window.send_to_editor = original_send_to_editor; }


title: Czy kod w function.php różni się w zależności od motywu?

text: Przeszedłem przez kilka samouczków i odkryłem, że dla każdej konwersji HTML na Wordpress, piszą plik function.php. Teraz zauważyłem, że w tej funkcji.php jest kilka wspólnych wierszy. Czyli jest to wspólny wiersz dla każdego motywu, czy jest inny?


title: Woocommerce otrzymuje atrybuty kategorii produktów

text: Mam widżet Atrybuty, który wyświetla atrybuty produktu, jako przykład użyjmy koloru. Jeśli na stronie Sklep widżet Atrybuty pokazuje wszystkie kolory w taksonomii atrybutów „pa_color” lub, mówiąc inaczej, wszystkie kolory dla wszystkich produktów. Ale jeśli nie jesteś na stronie Sklepu, ale na stronie archiwum produktów, takiej jak „Odzież męska”, czy istnieje sposób, aby pokazać tylko kolory, które są dostępne dla kategorii produktów „Męskie” www.twojadomena.com/product-category/męskie / Oto mój kod do pobrania wszystkich kolorów z taksonomii "pa_color" global $woocommerce, $product, $post; $attribute_taxonomy_name = $woocommerce->attribute_taxonomy_name( 'kolor' ); $args = array( 'menu_order'=> 'ASC', ); $attr_terms = get_terms($attribute_taxonomy_name, $args); A oto moja próba zwrócenia tylko kolorów z bieżącej strony taksonomii produktów: globalny $woocommerce, $product, $post; $curr_term = ''; if (is_shop()) { $curr_term = "sklep"; } else { $curr_term = get_term_by( 'slug', get_query_var('product_cat'), 'product_cat' ); } $attribute_taxonomy_name = $woocommerce->attribute_taxonomy_name( 'kolor' ); $args = array( 'menu_order'=> 'ASC', 'parent'=> $curr_term->term_id, ); $attr_terms = get_terms($attribute_taxonomy_name, $args); Zobaczysz, że najpierw otrzymuję termin produktu dla bieżącej strony archiwum produktu, a następnie próbuję użyć jego term_id w polu „parent” dla $args. Ale to wraca puste. Czy ktoś może mi pomóc wskazać właściwy kierunek. Dziękuję


title: Wordpress błąd 4.0 midia - obrazy

text: Cześć, mam ten sam problem tutaj: ![tutaj wpisz opis obrazu](http://i.stack.imgur.com/uGXLc.jpg) Czy ktoś może tu pomóc?


title: jak dodać skrypt Jquery do jednej strony?

text: Jaka jest najlepsza praktyka, aby zastosować pojedynczy skrypt do określonej strony? Kiedy próbuję zastosować skrypt całej strony, ma problemy z innymi wtyczkami. Czy istnieje praktyczna zasada?


title: WP_Query() i get_posts() nie mogą obsłużyć ponad tysiąca postów?

text:
Mam więc funkcję wyszukiwania, która po prostu pobiera niestandardowe posty i zwraca je jako listę. function search() { // argumenty zapytania post $args = array( 'post_type' => 'post_type', 'posts_per_page' => -1, 'post_status' => 'publikuj' ); // znacznik $markup = '
'; //pętla $pętla = nowe WP_Query($args); while ($loop->have_posts()) { $loop->the_post(); $znacznik .= '

'; } wp_reset_postdata(); $znacznik .='
'; echo $znacznik; } Działa to przy mniej niż stu postach, ale przy ponad tysiącu postów nie. Po prostu zgłasza błąd. Jeśli przełączę się na get_posts(), stanie się to samo. Czy mogę to zrobić w inny sposób?


title: Jak wyświetlić liczbę postów w sieci reklamowej?

text: Czy można wyświetlić łączną liczbę postów dla wszystkich blogów w sieci? `get_blog_count` i `get_user_count` robią to dla blogów i użytkowników, ale nie mogę znaleźć żadnych metod, aby to zrobić dla liczenia postów.


title: uruchamianie funkcji podczas zapisu postu i dodawanie zmiennej do meta postu

text: Tworzę stronę, która pobiera informacje z Vimeo za pomocą oEmbed. Wszystko działa dobrze, ale wielokrotne wywołania vimeo powodują problemy z ładowaniem strony (oczywiście). Zastanawiałem się, czy byłoby możliwe wykonanie tego samego wywołania oEmbed, gdy post jest tworzony / zapisywany, a następnie wypełnianie różnymi zmiennymi meta postu informacjami.


title: Zmień nazwę menu administracyjnego W3 Total Cache

text: Opracowuję wtyczkę, którą zainstaluję dla wszystkich moich klientów, aby nieco ułatwić korzystanie z WordPressa. Jedną z rzeczy, które zmieni, jest nazwa menu administratora W3 Total Cache Admin z „Wydajność” na „Ytelse (avansert)”. Wiem, jak zmienić nazwy domyślnych menu administratora. Poniższy kod zmienia „Posty” na „Nyheter” (Wiadomości w języku norweskim). function change_post_menu_label_news() { globalne $menu; $menu[5][0] = 'Nigdy'; Echo ''; } add_action( 'admin_menu', 'change_post_menu_label_news' ); Znajduję identyfikator do zmiany, tymczasowo używając tego kodu: add_action('admin_init','dump_admin_menu'); function dump_admin_menu() { if (is_admin()) { header('Typ treści:tekst/zwykły'); var_dump($GLOBALS['menu']); Wyjście; } } Jednak trudniej jest zmienić nazwę menu Wydajność, ponieważ identyfikator zwiększa się o jeden, gdy próbuję zmienić nazwę!. W3 Total Cache prawdopodobnie myśli, że identyfikator jest zajęty i próbuje wyższego. Jak mogę zmienić nazwę menu administratora W3 Total Cache, unikając tego problemu i bez edytowania czegokolwiek związanego z wtyczką?


title: get_the_post_thumbnail nie działa w haczyku wp_get_nav_menu_items

text: if ( ! is_admin() ) { add_filter( 'wp_get_nav_menu_items', 'display_last_posts_for_menu_item_ts', 10, 3 ); } function display_last_posts_for_menu_item_ts( $items, $menu, $args ) { $menu_order = count($items); /* Przesunięcie kolejności menu */ $post_ids = array(250,973); $args = tablica ( 'include' => $post_ids ); $elementy_dzieci = tablica(); foreach ( $items as $item ) { foreach ( get_posts ( $args ) as $post ) { // Dodaj element podmenu $img = get_the_post_thumbnail ( $post->id, 'thumbnail' ); $post_thumbnail_id = get_post_thumbnail_id( $post->id ); $img .= '<!--' . $post_thumbnail_id . ' / ' . $post->identyfikator . '-->'; $post->menu_item_parent = $item->ID; $post->post_type = 'nav_menu_item'; $post->object = 'niestandardowy'; $post->typ = 'niestandardowy'; $post->menu_order = ++$menu_order; $post->tytuł = $img . $post->tytuł_postu; $post->url = get_permalink( $post->ID ); /* dodaj dzieci */ $child_items[]= $post; } } return array_merge( $items, $child_items ); } Używam tej funkcji, aby dodać podmenu (zmodyfikowane z pozycji menu Kategoria i jego ostatnich 10 postów jako podmenu). Z powodu, którego nie rozumiem, nie mogę uzyskać miniaturek tych postów - chociaż poza tą funkcją `get_the_post_thumbnail (973, 'thumbnail' );` zwraca oczekiwany wynik. Jakieś pomysły na ten temat?


title: Osadzone tweety są pakowane w tagi <p> i nie mogą się ładować

text: Dlatego WordPress powinien osadzać tweety w postach, po prostu wklejając adres URL tweeta, na przykład https://twitter.com/cnnbrk/status/496020289277689858 To działa świetnie, jeśli uda ci się uniknąć umieszczania adresu URL w tagach `<p>`. Za pomocą jakiejś tajnej (?) magii możesz dostać tweet lub dwa, aby nie zawijać od czasu do czasu w znaczniki `<p>`, ale tak naprawdę edytor postów chętnie zawij wszystko w znaczniki `<p>`, nieważne jak ciężko staram się tego uniknąć: to jest to, co czyta przeglądarka, a tweet nie ładuje się automatycznie, tylko link jest wyświetlany jako zwykły tekst: `<p>https://twitter.com/cnnbrk/status/496020289277689858</p> ` To działało świetnie w starszych wersjach, od lat umieszczam tweety, ale co poszło nie tak w najnowszych wersjach WP? Jak uniknąć sytuacji, w której edytor postów umieszcza wszystko, co widzi w znacznikach `<p>`? Nie zamierzam całkowicie usuwać tagów `<p>`, po prostu nie chcę ich wokół osadzonych linków. Jakieś pomysły? Dziękuję!


title: Reguła przepisywania innych niż WP na ekranie administratora za pomocą wtyczki

text: Tworzę wtyczkę, która intensywnie wykorzystuje ekran administracyjny (dostosowując dość skomplikowany program MVC do WordPressa dla Creative Collaboration). Chcę używać prostych adresów URL, aby po przejściu użytkownika do `/studio/Whatever` adres URL został przepisany na poprawny ekran administratora. Prawdopodobnie jest na to lepszy sposób. To jest wynik końcowy, którego szukam: www.example.com/studio/cokolwiek/cokolwiek2 zostanie przepisane na: www.example.com/wordpress/wp-admin/admin.php?page=_cs&uri=cokolwiek/cokolwiek2 Dostałem to do pracy z następującym kodem: add_action('generate_rewrite_rules', 'cs_rewrite_rules'); funkcja cs_rewrite_rules() { globalne $wp_rewrite; $new_non_wp_rules = array( 'studio/(.*)' => 'wordpress/wp-admin/admin.php?page=_cs&uri=$1', ); $wp_rewrite->non_wp_rules += $new_non_wp_rules; } Użyłem kilku analizatorów i adres URL został przepisany w porządku. Jednak kiedy uruchamiam go w WordPressie, zostaje mi przekierowany do ekranu logowania. Pętla jest nieskończona. Nigdy nie wchodzę do panelu administracyjnego. Jeśli jednak udam się tam bezpośrednio, wszystko działa cudownie. Prawdopodobnie jest na to inny sposób. Rozważałem użycie `template_redirect` lub `template_include`, jak omówiono w innym wątku, ale żadne z nich nie daje mi danych logowania administratora ani procesu uruchamiania. Jak to rozwiązać?


title: Niestandardowy styl okna Wstaw multimedia

text: Chciałbym zmienić styl okna Wstaw multimedia. Jestem pewien, że stylizacja jest w wp-includes> css> media-views.min.css Nie mogę zmienić zminifikowanego pliku. Czy ktoś wie, gdzie lub w jaki sposób odwołuje się ten zminimalizowany plik w Wordpress. Chciałbym zmienić to odniesienie na wersję bez minifowania i dokonać zmian. Czy to możliwe ?


title: Wordpress i multisite, właściwy wybór?

text: Zamierzam założyć witrynę internetową dla organizacji non-profit i potrzebuję, aby była to platforma z wieloma witrynami. Nie znam Worpress, ale wiem, że istnieje opcja multi-site. Zastanawiam się więc, czy Wordpress jest właściwym rozwiązaniem... Więc tutaj to, czego potrzebuję do obsługi: **[1 platforma, 1 społeczność]** * pojedyncza baza użytkowników i SSO (1 logowanie do każdej witryny) ** [kilka stron, kilka stylów]** * każda strona musi mieć swój własny styl (kolory, czcionka, obrazy... w zasadzie tylko css imo) **[dokładny system uprawnień]** * każda strona musi mieć swój własny administratorów (może być 1 lub 2 administratorów na witrynę). Każdy administrator może zarządzać tylko własną witryną i powinien być uważany za mniej więcej zwykłego użytkownika w innych witrynach. * każda witryna powinna mieć własne grupy użytkowników, a administratorzy witryny powinni mieć możliwość zarządzania grupami użytkowników oraz dodawania/usuwania użytkowników. Grupy użytkowników muszą mieć uprawnienia do przeglądania / komentowania / publikowania treści. Zdaję sobie sprawę, że może nie pasować do wszystkich moich potrzeb, ale zastanawiam się, jak trudno jest to osiągnąć za pomocą Worpress: czy muszę dodawać tony modyfikacji lub wtyczek? Czy WP nie jest najlepszym wyborem, aby to osiągnąć? Dzięki za pomoc.


title: Jak przechowywać wartość_post_thumbnail() w zmiennej?

text: Jak wiecie, wynikiem `the_post_thumbnail()` jest znacznik obrazu. Potrzebuję tego tagu obrazu do przechowywania w rodzaju kolekcji lub tablicy. Używam poniższego kodu, ale to mi nie pomaga. I chcę go użyć w innym miejscu i wydrukować jako tag obrazu. <?php $tmp_query = nowe WP_Query('showposts=6'); $licznik=0; while ( $tmp_query->have_posts() ): $tmp_query->the_post(); $arr[$counter]=the_post_thumbnail(); $licznik++; <?php endwhile;wp_reset_query(); ?>


title: Strona szablonu niestandardowej podkategorii taksonomii

text: Chcę utworzyć stronę szablonu, na której mógłbym wyświetlać i wyświetlać wszystkie kategorie podrzędne mojego rodzica kategorii niestandardowej! To jest pierwszy poziom, a kiedy te kategorie podrzędne są wyświetlane, chciałbym połączyć je z szablonem strony, w którym będą wyświetlane wszystkie **posty** z kategorii podrzędnych! Czy to wykonalne? Dziękuję!


title: Jak uwzględnić wspólną kategorię w niestandardowym wyszukiwaniu kategorii

text: Zastanawiałem się, jak rozwiązać ten problem. To jest moje zapytanie: $query = new WP_Query( array( 'posts_per_page' => 6, 'orderby' => 'date', 'order' => 'DESC', 'category__not_in' => array( 7, 22 )) ); To jest proste zapytanie, które wysyła zapytanie do wszystkich ostatnich postów i wyklucza posty o identyfikatorach kategorii 7 i 22. Mam kilka postów, z którymi są połączone dwie kategorie, takie jak „7 i 10” oraz „22 i 13 ”. powyższe zapytanie również wyklucza te posty (tak powinno być), ale chcę też, aby zapytanie zawierało posty, które mają dwie lub więcej kategorii - z których jedna może mieć 7 lub 22. Zastanawiałem się, czy to możliwe? Mam nadzieję, że to wyjaśniłem. Doceniam każdą pomoc w tej sprawie.


title: jak chronić witrynę wordpress

text:
Ukończyłem witrynę, ale chcę ją chronić za pomocą opcji logowania. kiedy wchodzę na moją witrynę, przechodzi do strony logowania, jeśli użytkownik jest zalogowany po wyświetleniu strony głównej. Jak to zrobić, jeśli jest jakaś wtyczka ..... Ale tymczasowo umieściłem poniższy kod w front-page.php. opcja logowania wyświetli nakładkę mojej strony głównej. ale to nie jest właściwy sposób. jeśli zalogowany .login_page{display:none;} jeśli się wyloguję #loggedout .login_page{display:block;} w poniższym kodzie " title="Wyloguj">Wyloguj

 <?php if (!(current_user_can('poziom_0'))){ ?> <form action="<?php echo get_option('home'); ?>/wp-login.php" method="post">
 <input type="text" name="log" id="log" value="<?php echo wp_specialchars(stripslashes ($user_login), 1) ?>" size="20" />

 <input class='pwd' type="password" name="pwd" id="pwd " size="20" />

 <input type="submit" name="submit" value="Wyślij" class="button" />

  <input name="rememberme" id="rememberme" type="checkbox" zaznaczone="zaznaczone" value="na zawsze" /> Zapamiętaj mnie <typ wejścia="ukryty" nazwa="przekierowanie_do" wartość="<?php echo $_SERVER['REQUEST_URI']; ?>" />
 </form> <a style="display:none" href="<?php echo get_option('home'); ?>/wp-login.php?action=lostpassword">Odzyskaj hasło <?php } else { ?> <a style="display:none" href="<?php echo wp_logout_url(urlencode($_SERVER ['REQUEST_URI'])); ?>" id="logoutin">wyloguj
 <?php }?>


title: Pytanie wielokrotnego wyboru, na które można odpowiedzieć w poście

text: Tworzę wtyczkę, która dodaje do WordPressa pytania wielokrotnego wyboru. Chciałbym, aby kilka z nich było wyświetlanych w jednym poście w taki sposób, aby użytkownicy mogli wybrać odpowiedź i otrzymać natychmiastową informację zwrotną, czy wybrali prawidłowo, dodatkowo udostępniając link „Zobacz odpowiedź i wyjaśnienie”, aby rozwinąć akordeon zawierający poprawna odpowiedź i uzasadnienie. W celach ilustracyjnych chciałbym odtworzyć funkcjonalność, którą można tu zaobserwować. Dzięki zastosowaniu niektórych modułów jestem w stanie uzyskać akordeon „Zobacz odpowiedź i wyjaśnienie”. Ale gdy użytkownik kliknie opcje, nie wyświetla sąsiedniego prawidłowego lub nieprawidłowego symbolu na mojej stronie. Jak mogę osiągnąć ten efekt?


title: Czy ta wtyczka jest ładowana przed plikiem.php, a następnie nie pozwala mi korzystać z niektórych funkcji?

text: Próbuję użyć `get_home_path()` w mojej wtyczce, jednak otrzymuję _`wywołanie niezdefiniowanej funkcji`_ błąd krytyczny (uruchamiam Wordpress 3.8). Uważam, że oznaczałoby to, że moja wtyczka jest ładowana przed _wp-admin/includes/file.php_, gdzie znajduje się `get_home_path()`, prawda? Czy to tylko ja, czy to trochę dziwne? Jak mogę najpierw załadować plik.php, aby uzyskać dostęp do tej funkcji? Wiersz kodu, który powoduje ten problem (w mojej wtyczce) to: register_theme_directory(get_home_path().'/material/views');


title: Jak uzyskać rozmiary obrazu w funkcji zgodnie z rozmiarami wymienionymi w ustawieniach nośnika?

text: Tworzę niestandardową funkcję dla mojej witryny WordPress. function mediumFeaturedImage() { if ( has_post_thumbnail() ) { ?> <a href="<?php the_permalink(); ?>"> <?php the_post_thumbnail( 'medium' ); ?>  <?php } else { ?> <img src="<?php echo get_template_directory_uri(); ?>/images/no-image.jpg" alt="Brak obrazu" width="220" height="145"/> <?php } } Ustawiłem obrazy o "średnim" rozmiarze na "220 x 145" w "Ustawienia > Media". Ale jeśli spojrzysz na domyślny blok kodu „brak obrazu”, użyłem zakodowanych cyfr jako „szerokość = „220” wysokość = „145””. Ale chcę wykorzystać tę funkcję w kilku innych moich projektach. I nie będę używał zawsze tych samych ustawień dla obrazów średniej wielkości. Będzie się różnić w zależności od witryny. I zawsze chcę, żeby mój kod był dynamiczny. Dlatego chcę mieć taki kod: <img src="<?php echo get_template_directory_uri(); ?>/images/no-image.jpg" width="<?php $getimagesize('medium','width); ? >" height="<?php $getimagesize('medium','height); ?>"/> Użycie funkcji takiej jak ja nie jest obowiązkowe. Czy istnieje taki wbudowany kod, który zawsze będzie pobierał rozmiary przypisane w ustawieniach mediów w WP-Admin? Lub, używając `wp_get_attachment_image_src()`, jak mogę pobrać szerokość i wysokość tylko obrazu o średniej wielkości, który jest przypisany do obrazów o średniej wielkości w panelu administracyjnym? Możliwy?


title: Admin - zamówienie postu według kategorii i podkategorii

text: Próbuję uzyskać listę postów uporządkowanych w obszarze administracyjnym po posortowaniu według ich kategorii nadrzędnej. Idealnie byłoby to posortować w następujący sposób: kategoria nadrzędna 1 - kategoria podrzędna 1 --post 1 --post 2 --post 3 - kategoria podrzędna 2 --post 1 --post 2 --post 3 kategoria nadrzędna 2 - kategoria podrzędna 1 - -post 1 --post 2 itd. Ale niestety domyślnie sortuje według tytułu posta, gdy wybieram filtrowanie według kategorii nadrzędnej, co powoduje, że nie są one poprawnie posortowane. Spojrzałem na to łącze WP SE, myśląc, że może to być właściwy kierunek, ale nie jestem pewien, czy tego naprawdę szukam. Jakieś sugestie dotyczące tego, a może nawet zmiana domyślnego sortowania, które ma miejsce?


title: Jak wyświetlić dane z db na liście wyboru

text: Zastanawiam się, co jest nie tak w moim kodzie. Nie mogę uzyskać wszystkich danych w kolumnie „adres”. W rezultacie mam tylko najmniej rekordów. Dzięki za pomoc. globalny $wpdb; $result = $wpdb->get_results ("SELECT adres FROM wp_ow_adres;"); foreach ( $result as $result ) echo '<select id="adres" type="text" name="adres"> <option value="">Wybierz swój adres</option> <option>'. $result->adres.'</option> </select>	';


title: Jak rozwiązywać problemy z wolnym ładowaniem spowodowanym przez wtyczki?

text: Uruchomiłem wtyczkę Plugin Performance Profiler i wyszedłem po 54 sekundach ładowania. Wygląda na to, że te trzy wtyczki są odpowiedzialne za słabe czasy ładowania mojej witryny: * Woocommerce * Pokaż wyskakujące okienko po kliknięciu * Kolejność typów postów ![Wyniki profilu wydajności wtyczek](http://i.stack.imgur.com/xNMF0.png ) Jakie są następne kroki, które należy podjąć, aby rozwiązać ten problem?


title: URL obrazu tylko dla niestandardowego chodzika nawigacyjnego (walker_nav_menu)

text: Próbuję zbudować niestandardową nawigację, która pobiera wyróżniony obraz strony do elementu menu strony. Zamierzam użyć wyróżnionego obrazu jako tła dla elementu menu (który jest ładniejszy niż się wydaje). Mogę pobrać sam obraz, ale nie mogę wyizolować jego adresu URL, którego wymagam dla wygenerowanego wbudowanego CSS. Czuję, że nie rozumiem właściwego sposobu wyciągania identyfikatorów załączników lub elementów z ich tablic. Godzinami uderzam głową w ten problem, nawet próbując rozwiązań z podobnych dyskusji na Wordpress Answers. Ale bez kości. Oto kod, który z powodzeniem pobiera miniaturę, ale zwraca puste miejsce, gdy próbuję bezpośrednio pobrać jej adres URL. $thumbnail_url = ''; if ( has_post_thumbnail( $item->object_id )) { $thumbnail_img = get_the_post_thumbnail ( $item->object_id ); $thumbnail_array = wp_get_attachment_image_src( $thumbnail_img ); $thumbnail_url = $thumbnail_array[0]; } Dla odniesienia, oto konstrukcja kodu w funkcji start_el przed nią: function start_el( &$output, $item, $depth = 0, $args = array(), $id = 0 ) { $indent = ( $depth ) ? str_repeat( "\t", $depth ): ''; $nazwy_klasy = $wartość = ''; $klasy = puste( $item->klasy ) ? array() : (tablica) $item->classes; $classes[] = 'pozycja-menu-' . $pozycja->ID; $class_names = join( ' ', apply_filters( 'nav_menu_css_class', array_filter( $classes ), $item, $args ) ); $class_names = $class_names ? ' class="' .esc_attr( $class_names ) '"' : ''; $id = apply_filters( 'nav_menu_item_id', 'menu-item-'. $item->ID, $item, $args ); $id = $id ? 'id="' .esc_attr($id) '"' : ''; $wyjście .= $wcięcie . ''; $atrybuty = ! pusty( $item->attr_title ) ? ' title="' .esc_attr( $item->attr_title) .'"' : ''; $atrybuty .= ! pusty( $item->target) ? ' target="' .esc_attr( $item->target) .''"' : ''; $atrybuty .= ! pusty( $item->xfn ) ? 'rel="' .esc_attr( $item->xfn) .'"' : ''; $atrybuty .= ! pusty( $item->url ) ? ' href="' .esc_attr( $item->url) .'"' : ''; Z góry dziękuję za czyjąś pomoc.


title: Filtruj według kategorii postów w Bibliotece mediów

text: Próbuję znaleźć sposób na filtrowanie Biblioteki multimediów według kategorii postów, do której przypisany jest element multimedialny. Widzę, że możesz sortować według „dołączony do”, ale to tylko trochę mnie tam przybliży. Jakieś sugestie?


title: Jak zamienić ten kod HTML w shortcode? (dodawanie tekstów piosenek i nadawanie identyfikatora divowi)

text:
KROKI: 1. Nie zapomnij użyć różnych numerów identyfikacyjnych w każdym akordeonie. Na przykład: id="5" (1 do 10) 2. Tytuł znajduje się pomiędzy 3. Słowami przed 4. Umieść 2 akordeony na posty (jak w poniższym przykładzie). Albo zepsują.
 Jest jedna oczywista zaleta:

 Widziałeś, że to nadchodzi!
 Kup teraz i nie dostaniesz nic za darmo!
 Cóż, przynajmniej nie ma darmowego piwa. Może niedźwiedzia,
jeśli możesz sobie na to pozwolić.

 Teraz, gdy masz...

 swojego niedźwiedzia, musisz to przyznać!
 Nie, nie sprzedajemy niedźwiedzie.

 Wypożycz jednego niedźwiedzia, ...

 dostaniesz dwa za trzy piwa.

 A teraz o coś zupełnie innego.
 A teraz o coś zupełnie innego.
 A teraz o coś zupełnie innego.
 A teraz o coś zupełnie innego. .
 A teraz o coś zupełnie innego.
 A teraz o coś zupełnie innego.
 A teraz o coś zupełnie innego.
 A teraz o coś zupełnie innego.
 Okres.

 Jest jedna oczywista zaleta:

 Widziałeś, że to nadchodzi!
 Kup teraz i nie dostaniesz nic za darmo!
 Cóż, przynajmniej nie ma darmowego piwa. Może niedźwiedzia,
jeśli możesz sobie na to pozwolić.

 Teraz, gdy masz...

 swojego niedźwiedzia, musisz to przyznać!
 Nie, nie sprzedajemy niedźwiedzie.

 Wypożycz jednego niedźwiedzia, ...

 dostaniesz dwa za trzy piwa.

 A teraz o coś zupełnie innego.
 A teraz o coś zupełnie innego.
 A teraz o coś zupełnie innego.
 A teraz o coś zupełnie innego. .
 A teraz o coś zupełnie innego.
 A teraz o coś zupełnie innego.
 A teraz o coś zupełnie innego.
 A teraz o coś zupełnie innego.
 Okres.

 Mój klient powiedział, że jest zbyt skomplikowany. Jak mogę to zmienić w krótki kod? **EDYTUJ** To jest akordeon jQuery, tytuł trafia do znaczników kotwicy, a teksty przed znacznikami przerwy i identyfikatory div muszą się zmieniać za każdym razem.


title: Gdzie jest to zapytanie?

text: To zapytanie podane poniżej pojawia się często w moim dzienniku powolnych zapytań. Czy ktoś może mi powiedzieć, gdzie mogę znaleźć to zapytanie? które pomogą mi go zmodyfikować SELECT SQL_CALC_FOUND_ROWS wp_posts.* FROM wp_posts WHERE 1=1 AND (((wp_posts.post_title LIKE '%true%') OR (wp_posts.post_content LIKE '%true%')))) AND (wp_posts .post_password = '') AND wp_posts.post_type IN ('post', 'strona', 'załącznik', 'pokaz slajdów') ORAZ (wp_posts.post_status = 'opublikuj') ZAMÓWIENIE WP_posts.post_date LIMIT ZAPIS 0, 10;


title: Dodać paginację do niestandardowego szablonu, który używa niestandardowych typów postów?

text:
Nie znam się na paginacji Wordpressa, więc nie jestem pewien, czy to głupie pytanie. Układ: ![tutaj wprowadź opis obrazka](http://i.stack.imgur.com/BOcNb.png) Kod: <?php /** * Nazwa szablonu: Strona ze zdjęciami * @package WordPress * @subpackage Wybitny * @ od Prominent 1.0 */ get_header(); ?>

 <?php // Uruchom główną pętlę (The Loop). ?> <?php if ( have_posts() ) while ( have_posts() ): the_post(); ?>
 <?php the_content(); ?>
 <?php endwhile; ?>

 <?php $custom_posts = nowy WP_Query(); ?> <?php $custom_posts->zapytanie('nazwa_kategorii=Zdjęcia'); ?> <?php while ($custom_posts->have_posts()) : $custom_posts->the_post(); ?>
 <a href="<?php the_permalink(); ?>" title="<?php printf( esc_attr__( 'Permalink do %s', 'dwadzieścia' ) , atrybut_tytułu( 'echo=0' ) ); ?>" rel="zakładka"><?php the_content(); ?>
 <?php endwhile; ?>
 <?php get_sidebar(); ?>

 <?php get_footer(); ?> Nie wiem jak dodać paginację, to jest poza moim zrozumieniem.


title: Jak ustawić nazwę bloga?

text: Jestem nowy w WordPressie i nie wiem, jak ustawić „nazwę bloga”. Muszę zmienić bieżącą wartość, która została zakodowana (lub ustawiona) gdzieś tylko dla strony głównej. Pojawia się w tytule i nie wiem, jak go zaktualizować. Dziękuję.


title: Gdzie mogę zmienić tag tytułu ACTUAL, który jest ustawiony w pliku header.php

text: Jestem nowym użytkownikiem WordPressa i poproszono mnie o zmianę wartości w tagu tytułu. Znacznik tytułu ma format: „nazwa strony | slogan”, który jest ustawiany dynamicznie w pliku header.php (z tego, co widzę w innych postach, wydaje się, że jest to standardowy kod dla WordPressa). Tylko hasło na stronie głównej muszę zmienić. Wszystkie inne strony w serwisie są w porządku, wystarczy zmienić stronę główną i nie mam pojęcia, czy ta „sloganowa” część tytułu jest gdzieś zakodowana, czy ustawiona jako atrybut itp. Gdzie i jak to zmienić ?? Dziękuję


title: Jak automatycznie udostępniać posty na Facebooku?

text: Zasadniczo chciałbym wiedzieć, jak sprawić, by post pojawił się na Facebooku (na przykład po naciśnięciu przycisku udostępniania na Facebooku) zaraz po kliknięciu przycisku „Opublikuj”?


title: Wiele warunków filtrowania dla WP_Query

text: Trudno mi wymyślić, jak wykonać to (naprawdę proste) zadanie: > Zdobądź 4 losowe posty, ale wybierz tylko z 10 najnowszych postów. Działa to świetnie dla części losowej, ale oczywiście wybiera spośród wszystkich postów: $query = array( 'posts_per_page' => 4, 'orderby' => 'rand', 'post__not_in' =>array($post->ID) ); $wp_query = nowe WP_Query ($zapytanie); Zasadniczo chcę wziąć wyniki jednego zapytania: $firstquery = array( 'posts_per_page' => 10, 'orderby' => 'date', 'post__not_in' =>array($post->ID), 'order' = > „DESC” ); I przekaż wyniki do tego pierwszego. Każda pomoc byłaby bardzo mile widziana. Patrzyłem na ich połączenie, ale myślę, że to tylko daje mi wyniki z obu? Trochę zdezorientowany.


title: Niestandardowe powiadomienie administratora Wordpress nadal wyświetla się po walidacji wp_insert_post_data

text:
Próbuję zweryfikować dane posta przed zapisaniem, w szczególności sprawdzając, czy obraz istnieje w ciągu pierwszych 750 znaków treści posta. Poniższy kod działa i wyświetla powiadomienie administratora, gdy obraz jest obecny, ale po usunięciu obrazu i ponownym kliknięciu „Opublikuj”, powiadomienie pozostaje (przypuszczalnie dlatego, że arg zapytania jest nadal obecny). Próbowałem usunąć filtr, jeśli nie znaleziono obrazu, ale powiadomienie administratora jest wyświetlane, dopóki nie zapiszę posta po raz drugi. function my_image_check( $data, $postarr ) { $img_found = false; // pobierz treść posta $content = substr( $data['post_content'], 0, 750 ); // sprawdź ciągi obrazów i podpisów $image_pos = strpos( $content, '<img' ); $caption_pos = strpos( $treść, '[podpis' ); if( ( $image_pos !== false ) || ( $caption_pos !== false ) ) { $img_found = true; } if( $img_found ) { $data['post_status'] = 'szkic'; add_filter( 'redirect_post_location', 'my_image_redirect_filter', 99 ); } else { // to nie działa? remove_filter( 'redirect_post_location', 'my_image_redirect_filter', 99 ); } zwraca $dane; } add_filter( 'wp_insert_post_data', 'my_image_check', '99', 2 ); function my_image_redirect_filter( $location ) { remove_filter( 'redirect_post_location', __FILTER__, 99 ); $lokalizacja = add_query_arg ( 'embedded_featured_image', 1, $lokalizacja ); return $lokalizacja; } function my_post_admin_notices() { if( !isset( $_GET['embedded_featured_image'] ) ) return; switch( absint( $_GET['embedded_featured_image'] ) ) { case 1: $message = 'Obrazy nie mogą pojawić się w ciągu pierwszych 750 znaków postu. Przesuń obraz niżej w obszarze zawartości lub usuń go.'; przerwanie; default: $message = 'Nieoczekiwany błąd'; } echo '

' . $wiadomość . '

'; } add_action( 'admin_notices', 'my_post_admin_notices' );


title: Nie mogę uzyskać dostępu do administratora WP

text: Nie mogę uzyskać dostępu do mojego administratora WP. Wyświetlanie komunikatu o błędzie: > Ścisłe standardy: tylko zmienne powinny być przekazywane przez odwołanie w > /home2/tosaleco/public_html/wp-content/plugins/p3-profiler/p3-profiler.php > w wierszu 50. Oto wiersz 50, jeśli ( is_admin() && 'admin-ajax.php' == end(explode( '/', $_SERVER['PHP_SELF'] ) ) ) ) { Nie miałem żadnej wiedzy o PHP. Daj mi znać, jakie zmiany w tej linii dadzą mi dostęp do mojego administratora WP. Będzie czekał na odpowiedź.


title: Utwórz listę postów z nagłówkami tematów

text: Chciałbym użyć niestandardowego pola „temat” do zamawiania postów na Wordpress. Wydaje się to całkiem wykonalne przy użyciu 'orderby' => 'meta_value', 'meta_key' => 'topic' Ale chciałbym również mieć tytuł "temat" na początku każdego tematu. # temat 1 * opublikuj jeden w temacie 1 * opublikuj drugi w temacie 1 # temat 2 * opublikuj jeden w temacie 2 * opublikuj drugi w temacie 2 itd... Myślałem, że mogę mieć pętlę, która najpierw pobiera posty w kolejności od „temat” wyświetla „temat” dla pierwszego posta, a następnie wywołuje mój szablon, aby wyświetlić resztę posta za pomocą. <?php get_template_part( 'części/treść', 'strona' ); ?> Mogę to zrobić, aby kontynuować to dla wszystkich postów, ale dodaj oświadczenie, które mówi > "Jeśli 'temat' jest taki sam, temat dla ostatniego posta nie dodawaj tematu > tytuł przed opublikowaniem posta" to pierwszy raz, kiedy próbowałem wymyślić coś nowego w Wordpress - nie kopiowanie i wklejanie z przykładów, I jest mi to naprawdę trudne, właśnie spędziłem 2 dni na akademii kodu PHP, aby spróbować to rozgryźć dla mojego samego siebie. Ale nadal sprawia mi problemy (całkowite zamieszanie). Każda pomoc byłaby naprawdę mile widziana.


title: Jak wykorzystać wyniki get_categories wywołane w header.php również na stronie głównej bez dwukrotnego wywoływania bazy danych?

text: Mam bloga Wordpress z wieloma kategoriami i muszę wyświetlać dwa ostatnie posty z niektórych kategorii (nie wszystkie) w nagłówku. Dzieje się tak, aby informacje te były dostępne wszędzie, niezależnie od tego, gdzie znajduje się użytkownik. Ale muszę również wyświetlić te informacje na stronie głównej w formacie siatki, tak jak wiele innych motywów bloga na stronie głównej. Wiem, jak pobrać dane po przeczytaniu zapytania WordPress dla najnowszych postów z wielu kategorii, stąd wywołanie get_categories, a następnie użycie for each + get_posts(lub wp_query) w pętli. Mój problem jest bardziej związany z wydajnością, ponieważ jeśli się nie mylę, dla PIĘCIU polecanych kategorii muszę zadzwonić: **2 x get_categories** (1x w nagłówku i 1x w HP) **10 x get_posts** (5x w nagłówek i 5x w HP, po jednym dla każdej wyróżnionej kategorii) Czy można tego uniknąć, uzyskując dostęp do tych samych danych w pliku header.php i pliku strony głównej bez wielokrotnego wywoływania bazy danych? To znaczy, czy istnieje sposób na wywołanie get_categories i get_posts RAZ w nagłówku, a następnie ponowne użycie tego samego, dokładnego zestawu wyników później na stronie głównej? Jako maniak wydajności, jeśli uda mi się zredukować 12 wywołań bazy danych do 6, będę szczęśliwym człowiekiem. **EDYTUJ:** Po przetestowaniu kilku technik buforowania w ciągu ostatniej godziny, oto ostatni kod, który znalazłem w obu plikach PHP: <!-- Sprawdź pamięć podręczną, jeśli jest pusta, pobierz dane i użyj jej w innym miejscu to z pamięci podręcznej --> <?php $allPosts = wp_cache_get( 'allPosts' ); if ( false === $allPosts ) { $args = array('cat' => 3); $allPosts = nowe WP_Query($args); wp_cache_set( 'allPosts', $allPosts ); } ?> <!-- Zapętl je --> <?php while($allPosts->have_posts()) : $allPosts->the_post(); tytuł_("<br />"); koniec; ?> Czy to ma sens? Dziękuję Ci.


title: Jak mogę zidentyfikować media przesłane do mojej witryny, które nie są już nigdzie używane?

text: W czasie tworzenia wrzucam na stronę dużo zdjęć. Z biegiem czasu być może będę musiał poprawić jakość lub rozdzielczość, więc najczęściej przesyłam obrazy o tej samej nazwie. Tak więc pod koniec rozwoju mam wiele podobnych obrazów, tylko jeden z nich jest gdzieś używany. Jak mogę zidentyfikować nieużywane i usunąć je z mojego serwera?


title: Filtrowanie wyników WP_Query według kategorii

text: Używając WP_Query, muszę zebrać wybrane posty, które są **zarówno** Category1 i Category2. Chcę, aby ten wybór obejmował kategorię1 i wszystkie jej podkategorie (kategoria3 i kategoria4), o ile są one również oznaczone jako Kategoria2 **nawet jeśli** nie są oznaczone jako Kategoria1. Kategorie: Nazwa ID Rodzic Kategoria1 1 Kategoria2 2 Kategoria3 3 1 Kategoria4 4 1 Posty: ID Kategorie 1 1,2 2 2,3 3 2,4 Teraz, gdybym miał użyć WP_Query, aby znaleźć posty tylko z Kategoria1 trzy posty, w tym Post2 i Post3, ponieważ Category3 i Category4 są podkategoriami Category1, mimo że posty nie są Category1. new WP_Query( array( 'cat_id' => 1 ) Jednak jeśli użyję 'category__and' do znalezienia postów, które są zarówno Category1 jak i Category2 new WP_Query( array( 'category__and' => array(1, 2) ) znajdzie tylko Post1 który ma zarówno Category1 jak i Category2, ale nie znajdzie Post2 który jest Category2 i Category3 lub Post3, mimo że Category3 i Category4 są podkategoriami Category1.Czy mogę wziąć wynik tego: new WP_Query( array( ' cat_id' => 1) A następnie przefiltruj go, aby uwzględnić tylko te posty, które również należą do kategorii 2?Dziękujemy za wszelkie sugestie.


title: Załączanie Shortcode działa jak samozamykanie

text:
Jestem pewien, że brakuje mi czegoś prostego, ponieważ rzadko używam krótkich kodów, ale nie mogę uruchomić następującego krótkiego kodu. Chcę, żeby był to „zamykający” krótki tag, a „samozamykający się”, ale traktowany jako ten drugi. [bio_image name="moje imię" title="mój tytuł"] //media obrazu w treści posta [/bio_image] z tym kodem functions.php: function bio_image_func( $atts, $content = null) { extract( shortcode_atts( array ( 'imię' => 'pracownik', 'tytuł' => 'mózg', ), $atts ) ); zwróć '

' . $nazwa . ' ' . $tytuł . '
' . $treść . '
'; } add_shortcode( 'bio_image ', 'bio_image_func' ); produkuje:

 moje imię mój tytuł

  [/bio_image] Jak widać, zamykający znacznik jest właśnie drukowany. Jakieś sugestie? w celach informacyjnych: strona kodeksu shortcode


title: login użytkownika i jego profil

text: chcę się zalogować, wylogować i wyświetlić funkcjonalność profilu. Obecnie jestem w stanie zalogować się użytkownika i przekierować go na stronę główną serwisu. chcę pokazać nazwę zalogowanego użytkownika w menu i link do wylogowania. aby uzyskać nazwę użytkownika aktualnie zalogowanego użytkownika, spróbowałem tego: http://codex.wordpress.org/Function_Reference/wp_get_current_user, ale nie mogłem uzyskać nazwy użytkownika. dla linku logowania/wylogowania użyłem tego kodu w functions.php add_filter('wp_nav_menu_items', 'add_login_logout_link', 10, 2); funkcja add_login_logout_link($items, $args) { ob_start(); wp_loginout('index.php'); $loginoutlink = ob_get_contents(); ob_end_clean(); $items .= '<li>'. $loginoutlink .'</li>'; zwróć $items; }


title: Jak mogę uzyskać wtyczkę Jetpack Image, aby otwierała łącza w nowym oknie?

text: Widżet obrazu Jetpack nie oferuje opcji docelowej dla linków. Czy istnieje sposób na otwarcie wszystkich łączy do widżetów obrazów Jetpack w nowym oknie bez włamywania się do wtyczki? Jak przez haczyk lub funkcję?


title: Pobierz pierwszą pozycję menu niestandardowego menu

text: Załóżmy, że klient buduje niestandardowe menu z 3 pozycjami menu i chciałbym pokazać kilka postów, potem pierwszy element menu, jeszcze kilka postów, drugi element menu, więcej postów, a następnie trzeci element menu. Czy jest jakaś specjalna funkcja, aby pobrać tylko link do pierwszego elementu menu? Przykładowe menu: - STRONA GŁÓWNA - INFORMACJE - KONTAKT Jak mogę uzyskać link do pozycji menu "DOM" z menu niestandardowego (Wygląd -> Menu)?


title: Jak dynamicznie generować i wyświetlać obszary widżetów?

text: Chcę wyświetlać różne treści na pasku bocznym dla każdej kategorii, ale gdy tworzę nowe, muszę utworzyć dla nich obszar. Jak mogę mieć obszary widżetów dla każdej kategorii i odpowiednio wyświetlać je w motywie?


title: Potrzebujesz pomocy w prawidłowym działaniu tej strony

text:
Z jakiegoś powodu nawigacja strony nie działa poprawnie. Ma dziwny styl na stronie głównej (http://noahsdad.com/), więc jeśli przejdziesz do strony (np. strona 2, http://noahsdad.com/page/2/) zobaczysz ją naprawdę wygląda dziwnie. Nie wiem, co się dzieje. Jeśli ktoś ma jakieś pomysły, docenię to. Dziękuję. Oto kod z mojego pliku pagination.php <?php if( is_single() ) { ?>
 <?php $szerokość_strony = 'układ_pełnej_szerokości' == $ opcje['układ'] ? 'rozpiętość6' : 'rozpiętość4'; ?> <?php previous_post_link( '%link', _x( '← %title', 'standard') ); ?> <?php if( '' == get_previous_post() ) { ?> <?php next_post_link( '%link', _x( '%title →', 'standard') ); ?> <?php } else { ?> <?php next_post_link( '%link', _x( '%title →', 'standard ' ) ); ?> <?php } // koniec if/else ?>
 <?php } elseif ( $wp_query->max_num_pages > 1 && ( is_home() || is_archive() || is_search() ) ) { ?>

 <?php if( get_next_posts_link() ) { ?>
 <?php wp_pagenavi(); ?>
 <?php } // koniec if ?> <?php if( get_previous_posts_link() ) { ?>
 <?php wp_pagenavi(); ?>
 <?php } // koniec jeśli ?>

 <?php } // koniec jeśli/inaczej ?>


title: Próbuję odzyskać meta posta

text: Stworzyłem meta pole, które pozwala użytkownikom dodać dodatkową nazwę/identyfikator do swojego postu. Z tego, co mogę powiedzieć, jest to prawidłowe dodawanie metainformacji, ponieważ kiedy edytuję post, który ma niestandardową nazwę/identyfikator, domyślnie pojawia się on w polu wprowadzania, tak jak powinien. Mój problem polega na tym, że próbuję wyciągnąć niestandardowy identyfikator/nazwę i użyć go jako dodatkowego tagu identyfikatora w kodzie. Chociaż niczego nie odzyskuje. Kiedy używam kodu w moim motywie i sprawdzam html na stronie, identyfikator pokazuje ID="". Więc z jakiegoś powodu niczego nie ciągnie. Czy ktoś widzi problem? <?php $post_id = get_the_ID(); ?> <?php $wartość = get_post_meta($post_id, 'newtheme_section_id'); ?> <id="<?php $value; ?>"> Jeśli zmienię get_the_ID() na the_ID() to zwraca wartość, ale jest to identyfikator postu zamiast niestandardowego identyfikatora wprowadzonego przez użytkownika w polu. EDYCJA: Udało mi się to rozgryźć, powtarzając funkcję zamiast przechowywać ją w zmiennej, wraz z sugestią Mannysa. Oto zaktualizowany kod. <?php $post_id = get_the_ID(); ?> <id="<?php echo esc_attr( get_post_meta($post_id, 'newtheme_section_id', true) ); ?>">


title: Jak mogę utworzyć pozycje menu z meta pola na podstawie danych wprowadzonych przez użytkowników?

text: Stworzyłem metabox, który przyjmuje nazwę, którą użytkownik może podać jako dodatkową nazwę swojego postu. Zastanawiam się, jak mogę automatycznie utworzyć element menu na podstawie nazwy wprowadzonej przez użytkownika w metaboksie i ustawić adres URL na #PostName? Nawet gdyby ktoś poprowadził mnie we właściwym kierunku przy tworzeniu pozycji menu z metaboksu na ekranie posta, mógłbym rozgryźć resztę. **EDYTUJ:** Dodałem dodatkowe informacje, ponieważ rozumiem, że wydaje się to trochę mylące dla kogoś, kto wie, dlaczego tego chcę. Tworzę motyw niestandardowy za pomocą boilerplate’u html5. Jest to jednostronicowy motyw, w którym użytkownicy dodają sekcje do strony, dodając posty. Teoria jest taka, że użytkownik dodaje niestandardową nazwę do posta w meta polu na stronie i doda element menu o tej nazwie. Ponieważ utworzone przeze mnie meta pole dodaje już identyfikator w html każdego postu z dodatkowym tagiem identyfikatora, url dla menu będzie #PostName. Dzieje się tak, gdy użytkownik kliknie element menu, automatycznie przewinie się w prawo do sekcji. W większości motywów menu Nav prowadzi do innej strony. Ponieważ mój motyw jest motywem tylko jednej strony, łącza nawigacyjne przeniosą użytkownika do sekcji na stronie. Wszystko, co próbuję osiągnąć, to dodać automatyzację w motywie, aby użytkownicy nie musieli ręcznie dodawać elementów menu.


title: Usuń przecinek z ostatniego elementu wyjściowego z pętli

text: (lub dodaj przecinek do wszystkich elementów poza ostatnim...) Większość informacji, które znalazłem, dotyczy użycia licznika w pętli `foreach`. W tej konkretnej sytuacji używam zaawansowanych pól niestandardowych i znajduję się w standardowej pętli, a nie w pętli „foreach”. Muszę dodać przecinek na końcu każdego elementu z wyjątkiem ostatniego. <?php while( has_sub_field('obrazy') ): ?> <?php $image = wp_get_attachment_image_src(get_sub_field('obraz'), 'wsn_canvas'); ?> <?php echo $image[0]; ?> //echo przecinek tutaj <?php endwhile; ?>


title: Wtyczka pamięci podręcznej dla bloga z wiadomościami o średnim ruchu

text: Mam bloga o średnim ruchu. Serwer jest oparty na prędkości Lite. I wartości pingu 20-25 MS dla mojego kraju (ten blog nie jest globalny, tylko dla mojego kraju) Chcę zainstalować lekką wtyczkę pamięci podręcznej... Którą wtyczkę pamięci podręcznej możesz mi zaproponować? Dzięki i przepraszam za zły angielski, dobre dni.


title: Dołączanie jednej strony z funkcjami WordPress do drugiej

text:
Mam dwie strony php, jedna to strona główna, na której będzie przechowywana cała moja zawartość. Druga strona to cała masa php (które napisałem wraz z dołączonymi funkcjami wordpress) i js. Załóżmy, że plik php kontenera to Container.php Dołączony plik to IncludedFile.php Dołączam IncludedFile.php do Container.php za pomocą `include_once('IncludedFile.php');` Gdy plik include zostanie wywołany na mojej stronie kontenera żadna z funkcji WordPressa, które włączyłem, nie działa. Na przykład pierwsza funkcja w pliku IncludedFile.php pobiera bieżącego użytkownika: `$current_user = wp_get_current_user();` Następna linia w dół pobiera od bieżącego użytkownika pole meta do wyświetlenia na stronie, ale zwraca ono wartość null. `echo $current_user->favorite_color;` Czy powodem, dla którego funkcje wordpress nie działają, jest sposób, w jaki dołączam mój plik do drugiego? A może jest to większy problem razem? * * * **Edytuj** Od tego czasu dodałem mój `require('IncludedFile.php');` do mojego pliku functions.php, abym mógł dołączyć ten plik do każdej strony mojej witryny. Przykładowy kod: **Functions.php Function** function display_content_on_all_pages() { if ( is_user_logged_in() ) { echo '
'; require('DołączonyPlik.php'); echo '
'; } else { echo 'Nie jesteś zalogowany...'; } } add_action('wp_footer','display_content_on_all_pages'); **Zawarty plik.php** <?php $bieżący_użytkownik = wp_get_bieżący_użytkownik(); if ( $current_user->user_login == 'TestUser' ) { echo 'Jesteś TestUser'; } else { echo 'Nie jesteś Użytkownikiem Testowym'; } ?>


title: Jak przygotować metodę get_date() SimplePie_Item dla l10n?

text: Staram się poprawić lokalizację motywu Bones. Po stronie administratora udostępnia widget RSS, który używa następującego kodu: <?php echo $item->get_date('j F Y @ g:i a'); ?> To używa SimplePie, oto dokumentacja metody. Jaki byłby najlepszy sposób, aby to przetłumaczyć?


title: Dlaczego mój niestandardowy krótki kod zapytania o post wyświetla tylko 1 post?

text:
Stworzyłem krótki kod dla niestandardowego typu postu, abym mógł wyświetlać posty na stronie. Działa, ale pokazuje tylko 1 post. tutaj kod... ktoś wie co jest nie tak? // to jest funkcja shortcode zawierająca funkcję zapytania ea_get_location($atts){ extract(shortcode_atts(array( 'destination' => null, 'posts' => '10' ), $atts)); $ea_params = array( 'post_type'=>'itineraries', 'posts_per_page' => $posts, 'tax_query' => array( array( 'taxonomy' => 'location', 'field' => 'slug', ' warunki' => $cel )) ); query_posts( $ea_params ); while (have_posts()) : the_post(); $ea_var = '
'; $ea_var .= ''; $ea_var .= ''; $thumb = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'tinerary-thumb' ); $thumb_url = $kciuk['0']; $ea_var .= ''; $ea_var .= '
'; $ea_var .= ''; $ea_var .= get_the_title(); $ea_var .= '

'; $ea_var .= get_the_excerpt(); $ea_var .= '

'; koniec; // Zresetuj zapytanie wp_reset_query(); // zwróć zmienną do użycia w krótkim kodzie return '
'.$ea_var.'
'; } // zarejestruj funkcję jako funkcję shortcode register_shortcodes(){ add_shortcode('location', 'ea_get_location'); } ?> Oto nowy zaktualizowany kod // to jest funkcja shortcode zawierająca funkcję zapytania ea_get_location($atts){ extract(shortcode_atts(array( 'destination' => '', 'posts' => -1 ), $atty)); $ea_params = array( 'post_type'=>'itineraries', 'posts_per_page' => $posts, 'tax_query' => array( array( 'taxonomy' => 'location', 'field' => 'slug', ' warunki' => $cel )) ); // Zapytanie $ea_itin_query = nowe WP_Query( $ea_params ); $ea_var = ''; while ($ea_itin_query->have_posts()) : $ea_itin_query->the_post(); globalny $post; $ea_var .= '
'; $ea_var .= ''; $ea_var .= ''; $thumb = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'tinerary-thumb' ); $thumb_url = $kciuk['0']; $ea_var .= ''; $ea_var .= '
'; $ea_var .= ''; $ea_var .= get_the_title(); $ea_var .= '

'; $ea_var .= get_the_excerpt(); $ea_var .= '

'; koniec; // Zresetuj dane posta wp_reset_postdata(); // zwróć zmienną do użycia w krótkim kodzie return '
'.$ea_var.'
'; } // zarejestruj funkcję jako funkcję shortcode register_shortcodes(){ add_shortcode('location', 'ea_get_location'); } ?>


title: Umiędzynarodowienie / tłumaczenie niestandardowych typów postów i taksonomii

text: Stworzyłem niestandardowy typ postu i taksonomię za pomocą generatora, ale nie jestem do końca pewien, jak to zrobić. Google w tym nie pomaga. Nie mam pojęcia, gdzie tu umieścić domenę tekstową, a rzeczy, których próbowałem, sprawiły, że taksonomie w ogóle nie działają. Z góry dziękuję. Kod: add_action( 'init', 'register_cpt_portfolio' ); function register_cpt_portfolio() { $labels = array( 'name' => _x( 'Portfolio', 'portfolio'), 'singular_name' => _x( 'single-portfolio', 'portfolio' ), 'add_new' => _x ( 'Dodaj nowy', 'portfolio' ), 'add_new_item' => _x( 'Dodaj nowy portfel', 'portfolio' ), 'edit_item' => _x( 'Edytuj portfel', 'portfolio' ), 'new_item' = > _x( 'Nowe portfolio', 'portfolio' ), 'view_item' => _x( 'Wyświetl portfolio', 'portfolio' ), 'search_items' => _x( 'Przeszukaj portfele', 'portfolio' ), 'not_found' => __( 'Nie znaleziono portfeli', 'portfolio' ), 'not_found_in_trash' => _x( 'Nie znaleziono portfeli w Koszu', 'portfolio' ), 'parent_item_colon' => _x( 'Portfel nadrzędny:', 'portfolio ' ), 'menu_name' => _x( 'Portfolio', 'portfolio' ), ); $args = array( 'labels' => $labels, 'hierarchical' => false, 'supports' => array( 'title', 'editor', 'thumbnail' ), 'taxonomies' => array( 'portfolio_taxonomy' ), 'public' => prawda, 'show_ui' => prawda, 'show_in_menu' => prawda, 'show_in_nav_menus' => prawda, 'publicly_queryable' => prawda, 'exclude_from_search' => fałsz, 'has_archive' => prawda , 'query_var' => prawda, 'can_export' => prawda, 'rewrite' => prawda, 'capability_type' => 'post' ); register_post_type( 'portfolio', $args ); } add_action( 'init', 'register_taxonomy_portfolio_taxonomy' ); function register_taxonomy_portfolio_taxonomy() { $labels = array( 'name' => _x( 'Kategorie portfela', 'portfolio_taxonomy' ), 'singular_name' => _x( 'Kategoria portfela', 'portfolio_taxonomy' ), '=search_items ('Wyszukaj kategorie portfela', 'portfolio_taxonomy'), 'popular_items' => _x( 'Popularne kategorie portfela', 'portfolio_taxonomy' ), 'all_items' => _x('Wszystkie kategorie portfela', 'portfolio_taxonomy' ), 'parent_item ' => _x('Kategoria portfela rodzicielskiego', 'portfolio_taxonomy' ), 'parent_item_colon' => _x( 'Kategoria portfela rodzicielskiego:', 'portfolio_taxonomy' ), 'edit_item' => _x( 'Edytuj kategorię portfela', 'portfolio_taxonomy ' ), 'update_item' => _x( 'Aktualizuj kategorię portfela', 'portfolio_taxonomy' ), 'add_new_item' => _x( 'Dodaj nową kategorię portfela', 'portfolio_taxonomy'), 'new_i tem_name' => _x( 'Nowa kategoria portfela', 'portfolio_taxonomy' ), 'separate_items_with_commas' => _x( 'Oddziel kategorie portfela przecinkami', 'portfolio_taxonomy'), 'add_or_remove_items' => _x ', 'portfolio_taxonomy' ), 'choose_from_most_used' => _x( 'Wybierz z najczęściej używanych kategorii portfela', 'portfolio_taxonomy' ), 'menu_name' => _x( 'Kategorie portfela','portfolio_taxonomy'), ); $args = array( 'labels' => $labels, 'public' => true, 'show_in_nav_menus' => true, 'show_ui' => true, 'show_tagcloud' => true, 'hierarchical' => true, 'rewrite ' => prawda, 'query_var' => prawda ); register_taxonomy( 'portfolio_taxonomy', array('portfolio'), $args ); }


title: Szukasz hooka, który jest uruchamiany po zainstalowaniu/zaktualizowaniu wtyczki lub aktualizacji wp

text: Próbuję napisać kod, aby wysłać do mnie SMS-a za każdym razem, gdy ktoś aktualizuje/instaluje wtyczkę lub aktualizuje rdzeń WP, ale nie mogę znaleźć haka, który zostanie wystrzelony, gdy to się stanie. Czy ktoś wie, czy są jakieś haczyki, które mogę podłączyć, a które zostaną odpalone, gdy to się stanie? Dziękuję!


title: Można przesyłać doc i pdf, ale nie ppt - niedozwolone ze względów bezpieczeństwa

text: „Wstaw tutaj wyszukiwarkę” było dość bezużyteczne w tym przypadku – przejrzałem `wp-includes/functions.php`, `wp-admin/includes/file.php` itd., ale nie znalazłem powodu zachowanie, które dostaję. Korzystam z multisite i kiedy przesyłam plik .doc lub .pdf nie mam problemu. Kiedy przesyłam plik .ppt — niezależnie od rzeczywistej nazwy pliku lub typu MIME (np. plik .ppt przemianowany na .txt, plik .txt przemianowany na .ppt) — otrzymuję komunikat „Przepraszamy, ten typ pliku nie jest dozwolony ze względów bezpieczeństwa” z niewielkim innym wyjaśnieniem. Czy muszę zmodyfikować tabelę mimes, dodać override (a jeśli tak, to jaka jest do tego składnia), czy jest to coś w mojej konfiguracji Apache? Zrobiłem trochę zabawnych manipulacji, próbując zablokować rzeczy w kilku miejscach, prawdopodobnie blokując pliki .pot.


title: Dodaj pozycję menu profilu BuddyPress

text: W BuddyPress, gdy użytkownik kliknie swoją nazwę użytkownika, zostanie mu wyświetlona strona zawierająca menu: Aktywność Profil Wiadomości Znajomi Grupy Ustawienia Jak dodać element do tego menu? Jak wyświetlić to menu w moim szablonie? (Domyślny szablon strony wyświetla tylko główną nawigację).


title: Dlaczego wp-login przekierowuje do strony głównej, kiedy używam tej funkcji?

text: jestem zakłopotany; Nie widzę, gdzie popełniłem błąd z tym kodem. Powinno to przekierować wszystkich użytkowników na poziomie subskrybenta z powrotem do strony głównej witryny, jeśli próbują uzyskać dostęp do czegokolwiek w /wp-admin - ale _nie_, jeśli spróbują przejść do /wp-login.php : // PRZEKIEROWANIE WSZYSTKICH UŻYTKOWNIKÓW SUBSKRYBENTÓW DO STRONA GŁÓWNA WITRYNY JEŚLI PRÓBUJĄ UZYSKAĆ DOSTĘP DO WP-ADMIN add_action( 'init', 'blockusers_init' ); function blockusers_init() { if ( !current_user_can( 'edytuj' ) && is_admin() ) { wp_redirect( home_url() ); Wyjście; } } Próbowałem użyć roli zamiast możliwości ('subscriber' zamiast 'edit'') i to zadziałało, gdy byłem na jednej stronie instalacji WordPressa - ale ten motyw jest teraz używany w wielu witrynach /subfolder i z jakiegoś powodu rola nie działa. Korzystając z powyższego kodu, za każdym razem, gdy subskrybent przechodzi do /wp-admin lub /wp-login.php, zostaje przekierowany na stronę główną. Jakieś pomysły? Dzięki za pomoc!


title: Dziwaczny problem z permalinkami: wszędzie błędy 404

text: Przede wszystkim jest to zdecydowanie duplikat odwiecznego pytania „moje permalinki Wordpress generują błędy 404”, ale w pewnym sensie jest to inne, ponieważ żadne rozwiązania, które wypróbowałem, nie zadziałały. **Krótka historia mojego problemu:** Stworzyłem lokalnie witrynę Wordpress, wszystkie permalinki i wszystko działało. Zainstalowałem nową kopię Wordpressa na serwerze, zaimportowałem wszystkie moje lokalne posty i wszystko na stronie głównej wyglądało świetnie, na tym kończy się świetność. Żaden z permalinków nie działa, strony, posty (wszystkie posty używają niestandardowych typów postów), wszystkie dają mi wiadomość: ** „Nie znaleziono żądanego adresu URL /treść/musimy-pogadać-o-kevin/ nie został znaleziony na tym serwerze."** Typ posta, do którego należy ten post, nazywa się: "sketcphad", jednak mam przepisanie mojej funkcji register_post_type, która sprawia, że jest "treść", która zdecydowanie działa lokalnie, więc nie o to chodzi. **Rzeczy, które próbowałem:** 1. Ręczne zastępowanie reguł przepisywania .htaccess, a następnie usuwanie ich i ponowne dodawanie 2. Dodanie flush_rewrite_rules() do mojego pliku functions.php 3. Odwiedzenie ustawień -> strona permalinków, a następnie kliknięcie Zapisz 4. Próbuję innej struktury permalinków (obecnie jest to /%postname%) Próbowałem kilku innych bezskutecznie 5. Próbowałem usunąć treść i dodać ją ręcznie 6. Próbowałem ponownie dodać na stronach ręcznie Zastanawiające w tej sytuacji jest to, że strona działa lokalnie, co może się stać na moim serwerze, aby spowodować te problemy? Serwer działa w zasadzie w tym samym środowisku LAMP, z wyjątkiem tego, że moje lokalne środowisko LAMP używa XAMPP w systemie Windows, ale przeniosłem wiele witryn z lokalnego na zdalny serwer bez takiego problemu. Czego nie widzę? **Zobacz poniżej mój kod functions.php, który rejestruje typy postów.** function sketchpad_posttype() { // Etykiety dla naszego niestandardowego typu postu $labels = array( 'name' => _x('Content', 'sketchpad' ), 'singular_name' => _x('Wpis treści', 'sketchpad'), 'add_new' => _x('Dodaj nowy', 'Wpis treści'), 'add_new_item' => __('Dodaj wpis treści') , 'edit_item' => __('Edytuj wpis treści'), 'new_item' => __('Nowy wpis treści'), 'view_item' => __('Wyświetl wpis treści'), 'search_items' => __( 'Wyszukaj wpisy treści'), 'not_found' => __('Nic nie znaleziono'), 'not_found_in_trash' => __('Nic nie znaleziono w Koszu'), 'parent_item_colon' => '' ); // Argumenty określające, w jaki sposób używamy naszego niestandardowego typu postu $args = array( 'labels' => $labels, 'public' => true, 'publicly_queryable' => true, 'show_ui' => true, 'query_var' = > true, 'menu_icon' => get_stylesheet_directory_uri() . '/images/icons/notepad.png', 'rewrite' => array('slug' => 'content'), 'capability_type' => 'post', ' hierarchical' => false, 'menu_position' => null, 'supports' => array('title','editor', 'thumbnail'), 'taxonomy' => array('category') ); // Wywołaj funkcję register_post_type i ustaw ją jako oficjalną register_post_type( 'sketchpad' , $args ); } function article_posttype() { // Etykiety dla naszego niestandardowego typu postu $labels = array( 'name' => _x('Articles', 'article'), 'singular_name' => _x('Article', 'article') , 'add_new' => _x('Dodaj nowy', 'Artykuł'), 'add_new_item' => __('Dodaj artykuł'), 'edit_item' => __('Edytuj artykuł'), 'new_item' => __ ('Nowy artykuł'), 'view_item' => __('Wyświetl artykuł'), 'search_items' => __('Wyszukaj artykuły'), 'not_found' => __('Nic nie znaleziono'), 'not_found_in_trash' = > __('Nic nie znaleziono w Koszu'), 'parent_item_colon' => '' ); // Argumenty określające, w jaki sposób używamy naszego niestandardowego typu postu $args = array( 'labels' => $labels, 'public' => true, 'publicly_queryable' => true, 'show_ui' => true, 'query_var' = > true, 'menu_icon' => get_stylesheet_directory_uri() . '/images/icons/notepad.png', 'rewrite' => array('slug' => 'article'), 'capability_type' => 'post', ' hierarchical' => false, 'menu_position' => null, 'supports' => array('title','editor','thumbnail'), 'taxonomy' => array('category') ); // Wywołaj funkcję register_post_type i ustaw ją jako oficjalną register_post_type( 'article' , $args ); } // Zarejestruj nasze niestandardowe typy postów add_action('init', 'sketchpad_posttype'); add_action('init', 'article_posttype');


title: Menu — Otworzyć elementy w nowej karcie/oknie?

text: Mam 3.1.2 bieganie z motywem Boldy. Link do witryny. Mam menu, które zawiera szereg zewnętrznych linków wymienionych w pozycjach. Domyślnie te elementy NIE są ładowane w nowej karcie/oknie. Nie ma opcji w Administracja --> Wygląd --> Menu, aby zaznaczyć pole, aby powiedzieć otwórz w nowym oknie. Jak mam ich do tego zmusić?


title: Dlaczego nie działa funkcja jquery show() w wordpressie?

text:
Próbuję utworzyć formularz szybkiego komentarza na moim wordpressie za pomocą linku takiego: ![tutaj wpisz opis obrazu](http://i.stack.imgur.com/vKDGW.jpg) Mój plan jest taki, gdy klikniesz ten link, ty pobierz formularz komentarza za pomocą funkcji jquery show(), gdzie możesz dodać komentarz w ajax. jquery: $.noConflict(); jQuery( ".comment-mezo" ).click(funkcja() { jQuery( "#comment-mezo" ).show( "wolno" ); }); html: Szybki komentarz
 <textarea id="comment"></ textarea>
 <input type="submit">
 Ta funkcja działa poza wordpress (próbowałem na jsbin), ale wewnątrz nie. Czemu? Wiemy to dzięki Rares P i sri.: jquery jest załadowany i działa. Zmiana id nie pomaga. Show.js jest ładowany po załadowaniu strony. I używamy tego do ładowania skryptu: <?php function show() { wp_enqueue_style( 'nazwa-stylu', get_stylesheet_uri() ); wp_enqueue_script( 'nazwa-skryptu', get_template_directory_uri() . '/show.js', array() ); } add_action( 'wp_enqueue_scripts', 'show' );?>


title: uzyskać listę wszystkich zarejestrowanych działań

text: próbuję debugować wtyczkę, której nie stworzyłem i chcę wyświetlić listę wszystkich zarejestrowanych akcji. czytam to http://stackoverflow.com/questions/5224209/wordpress-how-do-i-get-all-the-registration-functions-for-the-content-filter ale jest specyficzny dla jednego hooka i dotyczy filtrów , a nie działania. Czy jest jakaś zmienna, taka jak $wp_filter czy coś?


title: Opublikuj miniaturę w zależności od kategorii

text: Mam dwie kategorie (nasza praca i aktualności) i tylko jeden single.php Jeśli patrzę na pojedynczy post w kategorii aktualności, to chcę pokazać również miniaturę, więc wstawiłem: `<?php if ( has_post_thumbnail() ) {the_post_thumbnail ('medium');} ?>` Ale nie chcę, aby to pojawiało się podczas przeglądania pojedynczego posta w naszej kategorii pracy, co mogę dodać, aby usunąć to dla kategorii ID#2?


title: Czy możesz wymagać użycia JavaScript we wtyczce WordPress?

text: Często używam przeglądarki Mozilla Firefox do testowania zmian, które wprowadzam do wtyczki, którą rozwijam. Mam też zainstalowany dodatek NoScript, ponieważ jest to również moja główna przeglądarka. Zauważyłem, że w menu Administracyjnym w WordPressie nie tylko brakuje ikon (otrzymuję pola z liczbami, co oznacza, że nie udało mi się załadować zestawu ikon czcionek), ale zupełnie się nie wyświetla po kliknięciu odpowiedniego przycisku menu (pamięć mięśniowa). Zakładam, że oznacza to, że menu nie działa z JavaScript. Czy to oznacza, że mogę wymagać JavaScript do administracyjnego końca mojej wtyczki? Co jeśli zdecyduję się na Ajax? Lub, co po stronie użytkownika końcowego; czy mogę tam wymagać JavaScript? Moje główne obawy związane z tymi pytaniami dotyczą dostępności i kompatybilności...


title: get_results nagle nie działa na jednym stole

text: Próbuję uzyskać listę wierszy z bazy danych. Wszystkie tabele działają oprócz tego, którego potrzebuję. Nie są zgłaszane żadne błędy, nawet nie otrzymujesz pustej tablicy. Moja instrukcja SELECT działa poprawnie bezpośrednio w phpmyadminie, ale nie przez Wordpress. Jakieś pomysły, co może się dziać? To doprowadza mnie do szału. $wpdb->get_results("WYBIERZ * Z właściwości")


title: child_of nie pracuje podczas wyszukiwania

text: Próbuję ograniczyć wyszukiwanie do strony nadrzędnej i jej własnych stron podrzędnych. Zmieniłem searchform.php dodając ten kod: <input type="hidden" value="<?php global $post;$ancestors2 = $post->ancestors; if ($ancestors2) { echo end($ancestors2); } else { echo $post->ID; } ?>" name="childof" /> Również dodałem funkcję do functions.php mojego motywu: function SearchFilter($query) { if (is_search() && !empty ($_GET['s']) && !empty($_GET['childof'])) { $parent_page_id = intval($_GET['childof']); $query->set('child_of', $parent_page_id ); } return $zapytanie; } add_filter('pre_get_posts','SearchFilter'); Przetestowałem zmienne za pomocą `var_dump($query)` i zwróciło: ["child_of"]=> int(104) Ale nadal widzę wyniki wyszukiwania z innych stron, a nie tylko ze strony nadrzędnej (lub jej stron podrzędnych ). Czemu? Dziękuję!


title: Identyfikator strony głównej

text: Chcę otrzymać identyfikator wybranej strony tytułowej. Moja strona używa szablonu dla tej strony. Czytałem o `get_option('page_on_front')`, ale to nie zadziałało dla mnie. Czy jest jakaś funkcja, aby uzyskać ten identyfikator?


title: niestandardowe zmiany szablonu typu postu między podglądem a publikacją

text: Stworzyłem niestandardowy post zatytułowany `project`, w którym ustawiłem również plik motywu `page-project.php`. Kiedy tworzę post w ramach tego niestandardowego typu postu i wyświetlam go w podglądzie, wyświetla się on w szablonie `page-project.php`, jednak po opublikowaniu go i wyświetleniu strony używa on szablonu `index.php` . Czy ktoś może mi powiedzieć, dlaczego tak się dzieje? To jest mój niestandardowy typ posta z `functions.php` FYI: właśnie się o tym dowiedziałem, jeśli zmienię permalinki na ustawienia domyślne, użyje również prawidłowego szablonu. add_action('init', 'project_register'); function project_register() { $labels = array( 'name' => _x('Moje projekty', 'Ogólna nazwa typu posta'), 'singular_name' => _x('Project', 'Pojedyncza nazwa typu postu'), ' add_new' => _x('Dodaj nowy', 'element projektu'), 'add_new_item' => __('Dodaj nowy element projektu'), 'edit_item' => __('Edytuj element projektu'), 'new_item' = > __('Nowy element projektu'), 'view_item' => __('Wyświetl element projektu'), 'search_items' => __('Wyszukaj projekt'), 'not_found' => __('Nic nie znaleziono'), 'not_found_in_trash' => __('Nic nie znaleziono w Koszu'), 'parent_item_colon' => '' ); $args = array( 'labels' => $labels, 'public' => true, 'publicly_queryable' => true, 'show_ui' => true, 'query_var' => true, 'menu_icon' => get_stylesheet_directory_uri() . '/article16.png', 'rewrite' => true, 'capability_type' => 'strona', 'hierarchical' => false, 'menu_position' => null, 'supports' => array('title','editor ','miniaturka','autor') ); $labels = array( 'name' => _x( 'Typy projektów', 'nazwa ogólna taksonomii' ), 'singular_name' => _x( 'Typ projektu', 'nazwa osobliwa taksonomii' ), 'search_items' => __( 'Wyszukaj typy projektów' ), 'all_items' => __( 'Wszystkie typy projektów' ), 'parent_item' => __( 'Rodzaj projektu nadrzędnego' ), 'parent_item_colon' => __( 'Typ projektu nadrzędnego:' ), 'edit_item' => __( 'Edytuj typ projektu' ), 'update_item' => __( 'Aktualizuj typ projektu' ), 'add_new_item' => __( 'Dodaj nowy typ projektu' ), 'new_item_name' => __( 'Nowa nazwa typu projektu' ), 'menu_name' => __( 'Typ projektu' ), ); register_taxonomy('project_type',array('project'), array('hierarchical' => true, 'labels' => $labels, 'show_ui' => true, 'query_var' => true, 'rewrite' => array ( 'slug' => 'typ' ),)); register_post_type( 'projekt' , $args ); }


title: Niestandardowe przepisywanie profili

text: Obecnie próbuję zmodyfikować moje przepisywanie, aby umożliwić dodatkowy segment adresu URL, np. http://example.com/vendors/username/ domyślnie WP pozwala na dodatkowe segmenty liczbowe, ale wszystko inne zwraca błąd 404. np. http://example.com/sprzedawcy/test. Jestem ciekaw, jak bym sobie poradził z zezwoleniem na takie adresy URL. Moja obecna struktura to: http://example.com/vendors/?username=example Powinno to być: http://example.com/vendors/username AND/OR http://example.com/username Ale nadal ma aby wyświetlić oryginalną stronę: http://example.com/vendors/username/ Wcześniej przestudiowałem ten artykuł, ale nadal nie mogłem go rozwiązać: http://www.hongkiat.com/blog/wordpress-url -przepisać/


title: Jak uruchomić wiele stron internetowych z jednej konfiguracji WordPress

text: Chcę stworzyć stronę internetową taką jak visahq.com w WordPressie, w rzeczywistości visahq.com ma wiele stron internetowych, takich jak visahq.in dla Indii, visahq.ru (będzie wyświetlana w języku rosyjskim) dla Rosji itp., a każda domena TLD ma wiele subdomen, takich jak visahq.in ma subdomenę dla Australii http://australia.visahq.in/ jak dla każdego kraju. Treść wszystkich stron internetowych jest prawie taka sama, z pewnymi zmianami w zależności od warunków. Mój problem polega na tym, że chcę zarządzać wszystkimi domenami TLD i subdomenami w jednej konfiguracji WordPress, jak mogę to zrobić z WordPress.


title: Wordpress pobiera informacje o najnowszej zainstalowanej wtyczce

text: Nie wiem, która wtyczka wyświetla błąd "bp_setup_current_user został wywołany niepoprawnie" wywołując przed zainstalowaniem buddypress. Jak mogę uzyskać szczegółowe informacje o najnowszej wtyczce zainstalowanej w wordpressie?


title: Jak sprawić, by javascript działał na stronie opcji motywu

text: Panowie! Tworzę stronę opcji motywu dla mojego motywu WP. I natknąłem się na problem ze znalezieniem właściwego sposobu na wprowadzenie interakcji jQuery inline na stronie. Idealnie dla mnie w takiej sytuacji będzie wbudowany kod jQ <script type="text/javascript"> $(document).on({ gotowy: function(){ alert('Hej!'); } }) </script> Ale ten kod się nie powiedzie, ponieważ wydaje mi się, że strona opcji administratora jest renderowana przed dołączeniem jQuery, więc js generuje oczekiwany błąd. Ten sam kod bez identyfikatorów jQ działa dobrze, co oznacza, że otrzymuję okno alertu po wprowadzeniu: <script type="text/javascript"> alert('Hej!'); </script> Pytanie brzmi, jak poprawnie wprowadzić wbudowane js zawierające składnię jQ (lub dowolny inny framework) i sprawić, by działała?


title: pagenavi pokazuje wiele stron obliczonych ze wszystkich postów w witrynie za pomocą query_posts

text: Muszę wykonać posty z 2 oddzielnych słów kluczowych za pomocą `s=keyword` z `get_posts`, ale szukam tylko w tytułach. Znalazłem tę odpowiedź. Stworzyłem niestandardowy szablon, aby używać go na pojedynczej stronie. Następnie użyłem scalonego `get_posts` w mojej odpowiedzi, używając tego. Mój kod szablonu to: <?php /* Nazwa szablonu: posty z niestandardowego szablonu */ ?> <?php get_header(); ?> <?php add_filter( 'posts_search', '__search_by_title_only', 500, 2 ); ?> <?php //pierwsze zapytanie $blogposts = get_posts(array( 's' => 'keyword1', 'showposts' => -1, )); //drugie zapytanie $authorposts = get_posts(array( 's' => 'keyword2', 'showposts' => -1, )); $mergedposts = array_merge( $blogposts, $authorposts ); //połącz zapytania $postids = array(); foreach( $mergedposts as $item ) { $postids[]=$item->ID; //utwórz nowe zapytanie tylko z identyfikatorów postów } $uniqueposts = array_unique($postids); //usuń zduplikowane identyfikatory postów $mypostcount = count($posts); $posts = get_posts(array( //new zapytanie tylko o unikalne identyfikatory postów w scalonych zapytaniach z powyższych 'post__in' => $uniqueposts, 'posts_per_page' => 12, 'paged' => $paged, ));? > <?php remove_filter( 'posts_search', '__search_by_title_only', 500 ); ?> <div class="post-listing"> <?php foreach( $posty jako $post ): ?> <?php setup_postdata($post); ?> // kod układu tutaj <?php endforeach; ?> </div> <?php query_posts('paged='.$paged.'&posts_per_page='. $cat_query); ?> <?php if(function_exists('tie_pagenavi')) { tie_pagenavi(); } ?> <?php wp_reset_postdata();?> </div> <?php get_sidebar(); ?> <?php get_footer(); ? moja baza danych. Używam niestandardowego motywu, który zawiera wewnętrzny pagenavi o nazwie `tie_pagenavi()`. Próbowałem też wtyczki `wp_pagenavi`. **Uwaga: do obliczenia liczby postów używam `$mypostcount = count($posts);`. Przetestowałem to za pomocą echa. Tak naprawdę jest on zwracany przez rzeczywistą liczbę postów w tej pętli, ale nie jestem pewien, jak użyć go do ograniczenia liczby paginacji.** Możesz sprawdzić wszystko samodzielnie w `http://elnhrda.com/e/sisi2posts /strona/56/`. 56 to ostatnia strona, na której znajdują się posty. **Edytuj:** Po dalszych poszukiwaniach i testowaniu problem pochodzi z tej linii query_posts('paged='.$paged.'&posts_per_page='. $cat_query); Jeśli go usunę, paginacja zniknie. Jeśli dodam do tego `'&showposts=2000'` numery stron zmieniły łączną liczbę moich postów podzieloną na 2000.


title: Usunąć podziały wierszy z <code>?

text:
Ten edytor HTML w postaci kodu: [shortcode] [bar]foo[/bar] [bar]foo[/bar] [bar]foo[/bar] [/shortcode] Zwraca: [shortcode]
 [bar]foo[/bar]
 [bar]foo[/bar]
 [bar]foo[/bar]
 [/shortcode] Białe znaki są ustawione na pre-wrap w css (i chcę to w ten sposób) i używam tego fragmentu kodu (zazwyczaj działa na shortcodes): remove_filter( 'the_content', 'wpautop' ); add_filter( 'the_content', 'wpautop' , 99 );`tu wpisz kod` Nie chcę używać wtyczek ani usuwać tych podziałów wierszy za pomocą JavaScript. Jakieś pomysły? Nie mogę też edytować podstawowych plików WP (tylko motywy). Wiem, że jest to wykonalne, ponieważ widziałem wiele motywów premium z ładnymi i czystymi sekcjami kodu. [edytuj] Użycie `<code><pre>contents</pre></code>` w jakiś sposób usuwa wszystkie znaczniki `<br/>` z kodu (dlaczego?), ale nie chcę dodawać `<pre >` za każdym razem, gdy piszę jakiś kod.


title: Dodać akcję tworzenia nowego posta po odpaleniu wp_insert_post? Pomyśl, że tworzy nieskończoną pętlę

text: Muszę pobrać meta postu z posta i utworzyć niestandardowy post typu post. Używam poniższego kodu, ale myślę, że tworzy nieskończoną pętlę. Kiedy wp_insert_post odpala, mam wykonać funkcję create_cptpost, która pobiera PID utworzonego postu `$post_id` otrzymuje niestandardowe pole `ac_1`, a następnie muszę utworzyć nowy post w typie postu cpt i zaktualizować meta postu. Czy jest na to inny sposób? Zasadniczo próbuję skopiować pierwszą normalną treść posta do nowego niestandardowego posta typu post. function create_mycpt( $post_id ) { $post = get_post($post_id, ARRAY_A); if ( wp_is_post_revision( $post_id ) ) return; $ac1 = get_field('ac_1',$post_id); $my_post = array( 'post_title' => 'Tytuł', 'post_type' => 'mycpt' ); $pid = wp_insert_post ($my_post ); update_post_meta($pid, 'ac_1', $ac1); } add_action( 'wp_insert_post', 'create_mycpt');


title: jak bbPress i buddypress dodają własne szablony stron do rozwijanego szablonu strony na ekranie edycji strony

text: Piszę wtyczkę i muszę wiedzieć, jak dodać szablon strony na ekranie edycji strony z poziomu wtyczki. bbPress i Buddypress dodają szablony stron do tego menu rozwijanego i nie wiem, jak to robią. Nie szukam rozwiązania template_redirect, musi działać w backendzie. Korzystam już z template_redirect i nie potrzebuję z nim żadnej pomocy! Wszelka pomoc byłaby mile widziana.


title: Jak podłączyć się do akcji szybkiej edycji?

text: Znalazłem to rozwiązanie, aby automatycznie przypisywać terminy nadrzędne po wybraniu terminu podrzędnego, co działa dobrze dla haka **save_post**: add_action('save_post', 'assign_parent_terms'); funkcja assign_parent_terms($post_id){ global $post; if($post->post_type != 'produkt') return $post_id; // pobierz wszystkie przypisane warunki $terms = wp_get_post_terms($post_id, 'product_cat' ); foreach($terms as $term){ while($term->parent != 0 && !has_term( $term->parent, 'product_cat', $post )){ // idź w górę, aż dojdziemy do warunków poziomu 0 wp_set_post_terms ($post_id, array($term->parent), 'product_cat', true); $term = get_term($term->parent, 'product_cat'); } } } Ponieważ mam dużą liczbę postów, muszę podłączyć się do **akcji szybkiej edycji**, a nie tylko do akcji zapisywania postów. Czy ktoś ma rozwiązanie tego haka?


title: Jak zdefiniować termin dla taksonomii niestandardowej?

text: Mam niestandardowy typ posta o nazwie `q-questions` i ma on niestandardową taksonomię o nazwie `q-categories`. Wstawiam post przez `wp_insert_post` i chcę zdefiniować kilka terminów dla taksonomii Mój kod to: $my_post = array( 'post_title' => 'Custom-tax', 'post_content' => 'To jest mój post.', 'post_type' => 'q-pytania', ); $post_id = wp_insert_post( $my_post ); Co powinienem zrobić, aby zdefiniować `q-categories` dla tego posta jako `my-category`?


title: Wiele pętli na stronie indeksu z przyklejonym wpisem i paginacją

text:
Pierwszy post na tej stronie. Mam nadzieję, że uzyskam od was pomoc. Prawdopodobnie prosta odpowiedź dla was ekspertów. Mam dwie kategorie (wiadomości i praca). Chcę pokazać na mojej stronie indeksu (strona startowa/blog wordpress) pięć najnowszych wiadomości u góry (wiadomości z kat.). Poniżej chcę pokazać mój post (wiadomości o kotach i praca). Mam też przyklejone posty w pracy kota, które chcę tylko na pierwszej stronie. Myślę, że oznacza to trzy pętle. jeden do wiadomości, jeden do przyklejania w pracy i wiadomościach, a drugi do pracy i wiadomości, żaden przyklejony. Mogę sprawić, żeby to zadziałało, ale problem polega na tym, że mój przyklejony post pojawia się najpierw na wszystkich stronach, gdy przeglądam plik indeksu (np. naciśnij przeczytaj poprzedni post, /page/2, /page/3 itp. Jak mogę sprawić, aby przyklejony post był przyklejony tylko na pierwszej stronie (index.php)?Oto mój kod:
 <?php $wp_query = new WP_Query(array('category_name' = > Wiadomości, 'posts_per_page' => 5)); ?> <?php while ($wp_query->have_posts()) : $wp_query->the_post(); ?> <?php get_template_part( 'pętla', 'indeks' ?> <?php endwhile; ?> <?php wp_reset_postdata(); ?>

  < ?php if ( $paged != True ): ?> <?php $wp_query = new WP_Query(array('post__in' => get_option('sticky_posts'), 'category_name' => Praca)); ?> <?php while ($wp_query->have_posts()) : $wp_query->the_post(); ?> <?php get_template_part( 'pętla', 'indeks' ); ?> <?php koniec; ?> <?php wp_reset_postdata(); ?> <?php endif ?>  <?php $wp_query = new WP_Query(array('post__not_in' => get_option('sticky_posts'), 'category_name' => Praca, 'posts_per_page' => 8, 'stronicowany' => $stronicowany)); ?> <?php while ($wp_query->have_posts()) : $wp_query->the_post(); ?> <?php get_template_part( 'pętla', 'indeks' ); ?> <?php koniec; ?> <?php wp_reset_postdata(); ?>
 Dzięki /K Mój kod stronicowania: function pagination() { global $wp_query; $total = $wp_query->max_num_pages; // Podział na strony tylko wtedy, gdy mamy więcej niż jedną stronę if ( $total > 1 ) { // Pobierz bieżącą stronę if ( !$current_page = get_query_var('paged')) $current_page = 1; // Struktura „formatu” zależy od tego, czy używamy ładnych permalinków $permalinks = get_option('permalink_structure'); $format = pusty( $permalinki) ? '&page=%#%' : 'strona/%#%/'; echo paginate_links(array( 'base' => get_pagenum_link(1) . '%_%', 'format' => $format, 'current' => $bieżąca_strona, 'total' => $total, 'mid_size' => 2, 'poprzedni_następny' => Fałsz )); } }


title: Jak usunąć niestandardowy panel motywów z motywu?

text: Jak usunąć panel administracyjny niestandardowego motywu z motywu, który ma opcje zmiany kolorów, układów itp.? Dziękuję. K


title: Przepisz /category/cars do /topics/cars

text: Wiem, że istnieje wiele pytań i postów na ten temat, jednak nie mogłem znaleźć rozwiązania ani istniejącego wątku na moje konkretne pytanie. Jeśli wypiszę moje kategorie i kliknę na "samochody", adres URL wygląda tak: `url/category/cars` Czy można po prostu użyć jakiejś funkcji w functions.php do zmiany słowa `category` na np. `topics` `url/topics/cars` Jakieś pomysły? Z góry dziękuję!


title: Jakie typy plików mogę przesyłać za pomocą programu Wordpress Uploader?

text: Mam domenę z zainstalowanym Wordpressem 3.4.2. (To NIE jest witryna Wordpress.com) Jakie pliki mogę przesłać? Wiem, że akceptowane są formaty .jpeg, .gif, .png, .mp3 itp., ale gdzie mogę znaleźć pełną listę akceptowanych typów plików? Zasadniczo, co mogę przesłać za pomocą tego ekranu: ![tutaj wpisz opis obrazu](http://i.stack.imgur.com/22Y4g.jpg)


title: Jak mogę użyć „getarchives_where”, aby uzyskać comiesięczne archiwa dla stron statycznych?

text: Chciałbym otrzymywać comiesięczne archiwa dla stron statycznych. Próbowałem użyć następnego kodu: add_filter('getarchives_where','my_archives_filter'); function my_archives_filter($where_clause) { return "GDZIE post_type = 'strona' AND post_status = 'opublikuj'"; } aw pasku bocznym piszę: add_filter('getarchives_where','my_archives_filter'); wp_get_archives('typ=rocznie'); usuń_filtr ('getarchives_where','my_archives_filter'); Ale to nie działa. Możesz mi pomóc? Dziękuję.


title: Nieprawidłowa data rejestracji użytkownika w wordpressie

text: Mam ten śmieszny problem i nie jestem w stanie zlokalizować, gdzie to się dzieje. Problem polega na tym, że użytkownik rejestruje się na mojej stronie, jego/jej data rejestracji jest błędna (nie tylko zła, ale totalna bzdura, nawet jeśli dodam je ręcznie z panelu administracyjnego). Próbowałem dezaktywować każdą wtyczkę i motyw zainstalowany na wordpressie bezskutecznie. Problem nie znika bez względu na wszystko. Oto zrzut ekranu z phpmyadmin. ![tutaj podaj opis obrazu](http://i.stack.imgur.com/qtPOj.png) Pomóż mi, proszę.


title: Długie permalinki są dzielone z wieloma kropkami i ulegają uszkodzeniu

text: Mam strony, które są zagnieżdżone w 3 poziomach, tj.: www.example.com/kino-w-naszym-kraju/nasze-festiwale/pierwszy-festiwal-z-bardzo-długa-nazwa Jak widać permalink robi się dość długi . Jeśli wejdę do edytora TinyMCE, wpiszę nazwę festiwalu i spróbuję dodać na nim link kierujący do tej strony festiwalu, otrzymuję taki wygenerowany link (zauważ trzy kropki): www.example.com/kino-w-naszym-kraju /nasze-festiwale/pierwsza-f...l-z-bardzo-długa-nazwa A link nie działa, kieruje do strony 404. Jeśli zaktualizuję link z poprawnym, to dobrze się zapisuje. Właściwie nie mogę cały czas powtarzać tego zachowania. Czasami działa to dobrze od samego początku. Jakieś pomysły, co może to spowodować?


title: Wykryj, z której strony pochodzi link

text: Czy istnieje sposób na wykrycie posta lub strony w witrynie, z której prowadzi link? Celem jest wyświetlenie niestandardowej zawartości, w tym przypadku siatki archiwum kategorii na dole bieżącej strony, w zależności od tego, na której stronie byłeś ostatnio. Jeśli nie bezpośrednio Wordpress, to najlepszy sposób php na zrobienie tego, na przykład łatwo dostępne miejsce w bazie danych?


title: Single.php różne zachowanie od administratora do nieadministratora

text:
W tym samym poście mam nagle dziwne zachowanie pliku `single.php` pomiędzy normalnym użytkownikiem a administratorem. Na początku pętli wykonuję: echo '
'; print_r ($ GLOBALS ['wp_query']); echo '
'; A wynik jest inny. **W przypadku administratora:** [queried_object_id] => 603 [request] => SELECT wp_posts.* FROM wp_posts WHERE 1=1 AND wp_posts.post_name = 'test' AND wp_posts.post_type = 'aya-bi-aya ' ORDER BY wp_posts.post_date DESC **W przypadku osoby niebędącej administratorem:** [queried_object_id] => 0 [request] => SELECT SQL_CALC_FOUND_ROWS wp_posts.ID FROM wp_posts WHERE 1=1 AND wp_posts.post_type = 'aya-bi -aya' ORAZ (wp_posts.post_status = 'publish') ORDER BY wp_posts.post_date DESC LIMIT 0, 10 Spędziłem półtora dnia próbując dowiedzieć się, co może być przyczyną tego dysfunkcji, ale na próżno. Twój czas jest naprawdę bezcenny.


title: Dodaj niestandardową treść do nieistniejącej strony

text: Próbuję dodać treść do strony, która w przeciwnym razie byłaby 404. Na przykład chcę zdefiniować treść posta dla mysite.com/existing-page/imaginary-page zamiast wyświetlać stronę 404. Wypróbowałem kilka różnych podejść i żadne nie zadziałało, więc bardzo doceniam twoją pomoc. Moja rzeczywista struktura jest następująca: mysite.com/personal-development/class. mysite.com/personal-development istnieje, ale mysite.com/personal-development/class nie. mojawitryna.com/personal-development/class wyświetli zmienioną zawartość z mysite.com/personal-development, jeśli wydaje się, że add_rewrite_rule zadziała, jeśli strona klasy rzeczywiście istniała. add_action( 'init', 'dynamic_classes_class_type_rewrite' ); funkcja dynamic_classes_class_type_rewrite() { globalne $wp_rewrite; add_rewrite_tag( '%personal-development%', '([^&]+)' ); add_rewrite_rule( '^personal-development/([^/]*)/?', 'index.php?page_id=17318&class_type=$matches[1]', 'top' ); } Ten przechwytuje stronę i anuluje 404. Następnie pokazuje zawartość strony głównej, ale nie używa arkuszy stylów szablonu ani nie pozwala mi zmienić treści. Poniższy przykład to moja próba uzyskania odpowiedniej treści i wyświetlenia jej. Próbowałem też wyświetlić inny szablon. Udało mi się wyświetlić szablon, ale nadal nie mogłem wyświetlić żadnej treści. add_filter('template_redirect', 'dynamic_classes_class_type_redirect' ); function dynamic_classes_class_type_redirect() { //dla najlepszego SEO ustawiam przekierowanie dla stron. globalne $wp, $wpdb, $wp_query; if(!$post_title=get_post($post)->post_title)//wygląda na to, że trafiliśmy 404 { $url=explode('/',dynamic_classes_page_url());//zobacz, czy jest to jedna z naszych dynamicznie tworzonych stron. if(count($url)>4)//musimy upewnić się, że to wystarczająco długo { $db_prefix= $wpdb->prefix; $sql='SELECT ID FROM '.$db_prefix.'posts WHERE post_name=\''.implode('',array_slice($url,-2,1)).'\' /*pobierz przedostatni*/ LIMIT 1'; $rs_class = $wpdb->get_results($sql); if($rs_class) { status_header( 200 ); $wp_query->is_404=fałsz; wp_reset_query(); setup_postdata(get_post($rs_class[0]->ID)); } } } } add_action i 'the_post' pozwolą mi modyfikować zawartość według potrzeb, ale nie dla błędów 404 - nawet jeśli anulowałem błąd 404, jak w powyższym przykładzie. add_action( 'the_post', 'my_the_post_action' ); function my_the_post_action( $post_object ) { $post_object->post_content='Test programisty.'; }


title: WP_LINK_PAGES Generowanie niepotrzebnego </p> tagu

text:
To jest bieżące wyjście dla mojego WP_LINK_PAGES, zwróć uwagę na niepotrzebny znacznik `</p>` na końcu. Mój kod dla mojego niestandardowego WP_LINK_PAGES można znaleźć tutaj.
 1 2 3 4 Następna strona


title: Dlaczego nie mogę kliknąć mojej treści ani wyróżnić tekstu za pomocą podpowiedzi?

text: Strona główna działa, ale nie mogę kliknąć żadnej treści w witrynie. Mogę kliknąć mój nagłówek/stopkę, aby uzyskać dostęp do stron, ale nie mogę nic zrobić z treścią między nagłówkiem a stopką. Na przykład, jeśli kliknę „Modele biznesowe”, nie mogę kliknąć „Przystępność cenowa” ani wyróżnić tekstu za pomocą podpowiedzi. Nie wiem, co zrobiłem źle! Działało wcześniej. Wyłączyłem wszystkie moje wtyczki, więc jeśli zajdziesz tak daleko, zobaczysz wiele krótkich kodów w treści. http://knowledex.org/stella/energymap/ Z góry dziękuję za wsparcie! Korzystam z Chrome i przetestowałem na wielu komputerach w Safari/Chrome.


title: sprawdź, czy wordpress aktualizuje lub publikuje post

text: Bardzo proste pytanie: Jak mogę sprawdzić, kiedy wp aktualizuje lub publikuje post? Ponieważ muszę sprawdzić wartość postmeta, która może być prawdziwa tylko wtedy, gdy post jest faktycznie publikowany, a więc nie musi być już obecny w systemie. Np. if(defined('DOING_AUTOSAVE') && DOING_AUTOSAVE ) jest zdefiniowane, gdy wp wykonuje autozapis. Czy jest coś takiego, kiedy robi aktualizację? Dziękuję Ci!! ok, więc add_action('save_post', 'fields_news_save'); function fields_news_save($post_id){ $errors = false; if(get_check_key($_POST['checks_news'])==0){ $errors = true; update_option('custom_token', $errors); update_option('custom_admin_errors', $txt_err=error_text($errors, 2)); remove_action('save_post','fields_news_save'); wp_update_post(array('ID' => $post_id, 'post_status' => 'szkic')); add_action('save_post', 'fields_news_save'); zwróć fałsz; } } Klauzula "if" sprawdza, czy istnieją wartości meta postu ustawione jako $_POST['checks_news'] i jest to funkcja, która wykonuje zapytanie: `function get_check_key($checker){ global $wpdb; $dane = tablica(); $wpdb->query(" SELECT * FROM $wpdb-> wp_postmeta WHERE`meta_value`= $checker; "); zwróć $wpdb->liczba_wierszy; }` Teraz chciałbym zrobić to "if" na początku sprawdzające, czy liczba wierszy wynosi 0 ORAZ wp wykonuje publikację, a nie aktualizację.


title: Wyklucz kategorię nadrzędną podczas pobierania postów kategorii przez slug

text: Mam następujący układ kategorii: Zasoby -- Dokumenty Chcę wyświetlić listę postów w kategorii dokumentów i mam następujący kod: $args = array( 'posts_per_page' => '-1', 'orderby' => 'ID ', 'zamówienie' => 'DESC', 'nazwa-kategorii' => 'dokumenty' ); $ankiety = get_posts($args); Zwraca posty w obu kategoriach dokumentów ORAZ zasobów. Chcę tylko tych w „dokumentach”. Wiem, że istnieją sposoby na wykluczenie kategorii według identyfikatora, ale muszę użyć informacji o kategorii, ponieważ moje deweloperskie i aktywne bazy danych nie pasują do siebie.


title: Czy get_permalink jest również kanonicznym adresem URL?

text: Pytanie mówi wszystko. Czy link bezpośredni jest równy kanonicznemu adresowi URL? A może istnieje inny sposób na uzyskanie kanonicznego adresu URL?


title: Wiele witryn — wybierz stronę główną na podstawie lokalizacji

text: Czy byłoby możliwe, aby index.php domeny domain.com był rozwijanym menu do wyboru strony głównej na podstawie tego, czy użytkownik znajduje się w mieście x, czy w mieście y? Chciałbym, aby plik cookie zapamiętywał wybór użytkownika.


title: Zamykanie identyfikatora WP_LINK_PAGES DIV z argumentem/po argumencie

text:
W poniższym kodzie muszę zamknąć div "link_wrap", który utworzyłem za pomocą `$args['before'] = '<div id="link_wrap">';` Kiedy próbuję wkleić `$args['after' ] = '</div>';` _above_ `return $args;` dodaje odpowiedni zamykający div, ale także renderuje resztę mojego kodu, co pozwala na _zarówno poprzednie/następne linki, jak i stronicowanie, całkowicie bezużyteczne. Jak poprawnie zamknąć div, zachowując funkcjonalność reszty kodu? // WP_LINK_PAGES: Dodaj poprzednie i następne linki do ponumerowanej listy linków add_filter('wp_link_pages_args', 'wp_link_pages_args_prevnext_add'); funkcja wp_link_pages_args_prevnext_add($args) { global $page, $numpages, $more, $pagenow; $args['before'] = '
'; $args['link_before'] = ''; $args['link_after'] = ''; if($page-1) # istnieje poprzednia strona $args['before'] .= ' '. _wp_link_page($strona-1) . $args['link_before'] . $args['poprzedni link do strony'] . '' . ' ' ; if ($page<$numpages) # jest następna strona $args['after'] = ' '. _wp_link_page($strona+1) . $args['link_before'] . $args['następny link do strony'] . '' ; return $args; }


title: Pozycje menu nawigacji znikają (ale nie od razu)

text: Pracuję nad witryną, w której niektóre elementy menu nawigacyjnego znikają (z interfejsu, zaplecza i bazy danych). Jednak debugowanie jest niezwykle trudne, ponieważ nie znikają natychmiast! W rezultacie nie mogę ustalić, co powoduje usunięcie. Więcej informacji: * Wygląda na to, że elementy menu nawigacyjnego, które są „niestandardowe” (np. do dowolnego adresu URL, a nie do wpisu/strony/kategorii itp.) mogą być bezpieczne. Nie jestem jeszcze tego w 100% pewien. * W pewnym momencie nowe pozycje menu nawigacji nie były zapisywane - dodałbym kilka do menu, kliknąłem "Zapisz menu", a menu zostałoby zapisane bez żadnych elementów menu. Jakieś sugestie dotyczące debugowania tego szczególnie frustrującego problemu? To jest na 3.4.1. Właśnie zaktualizowałem do wersji 3.4.2, ale nie mogę jeszcze dziś zweryfikować, czy nadal się to dzieje (chociaż nie mam powodu sądzić, że tak się nie stanie). Edycja: potwierdziłem, że "niestandardowe" elementy nawigacji (linki do dowolnego adresu URL, a strona WP/kategoria/itp.) nie są usuwane.


title: Usuwanie „Noindex, follow” ze stron

text: Korzystam z wtyczki WordPress SEO autorstwa Yoast. Ta wtyczka domyślnie pokazuje "noindex, follow" na każdej stronie. Jestem pewien, że znam plik, który wyświetla „noindex, follow”, ale po wielu „poprawkach” nie mogę usunąć kodu. Oto plik: https://plugins.svn.wordpress.org/wordpress-seo/tags/1.2.8.3/frontend/class-frontend.php Będę wdzięczny za informację, który wiersz należy skomentować lub co trzeba edytować. :)