title: Aktualizowanie tytułu posta za pomocą wp_update_post

text: Tworzę niestandardowy typ postu dla strony osób dla witryny klienta, która ma pola meta dla imienia i nazwiska, ale chciałbym również zaktualizować tytuł niestandardowych postów, aby był kombinacją tych dwóch (tj. „imię nazwisko"). Używam do tego `wp_update_post`, ale mam problem. Kiedy idę zaktualizować post, dane są aktualizowane poprawnie, ale mój kursor ciągle się obraca, a strona nigdy się nie ładuje. Zakładam, że dzieje się tak, ponieważ `wp_update_post` powoduje nieskończoną pętlę `save_post`, ale zalecana poprawka w tym zakresie w kodeksie wordpress nie działa i zakładam, że jest problem z wywoływaniem jednej lub więcej funkcji . Oto mój kod: add_action('save_post', 'save_details'); add_action('edit_post', 'save_details'); funkcja save_details($post_id){ global $post; if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) { return $post_id; } update_post_meta($post->ID, "imię", $_POST["imię"]); update_post_meta($post->ID, "nazwisko", $_POST["nazwisko"]); if (! wp_is_post_revision( $post_id) ){ $args = array(); $args['ID'] = $post_id; $args['post_title' ] = implode(' ', array($_POST["imię"],$_POST["nazwisko"])); remove_action('save_details','save_post'); wp_update_post ($args ); add_action('save_details','save_post'); } }


title: Wyświetlać najnowszy post w kategorii zamiast w archiwum?

text: Udało mi się przekierować stronę mojego bloga do mojego najnowszego posta - tzn. gdy klikniesz link „blog” w nawigacji, przejdzie on do strony z najnowszym postem i możesz kliknąć przyciski następny/poprzedni, aby nawigować między innymi postami. Teraz chcę zrobić to samo, ale dla określonej kategorii, więc gdy klikniesz link kategorii, zamiast wyświetlać stronę archiwum wszystkich postów w tej kategorii, wyświetla najnowszy post w tej kategorii. **Przyciski next/prev muszą wtedy przechodzić do postów tylko w tej kategorii.** Masz jakieś pomysły, jak to zrobić? Dzięki **===============UPDATE========** Skopiowałem mój kod z single.php do category.php i użyłem single_cat_title(); aby wyświetlić nazwę kategorii u góry strony. Muszę zmienić mój next/previous_post_link na next/previous_posts_link Jedyną wadą jest to, że adres URL wyświetla /cat=[catname]&paged=2 zamiast nazwy postu, ale nie jest to duży problem. Pozostał tylko problem, jak wyświetlić pełnoekranowy obraz tła, który jest dołączony do każdego postu i do którego odwołuje się w moim header.php: $background_image = get_post_meta($page_id, 'mb_background_image', true); $src = wp_get_attachment_image_src($obraz_w tle, 'pełny'); Jak mogę to nazwać ze strony kategorii? **===============UPDATE 2===============** Naprawiono przez zastąpienie tej linii: $background_image = get_post_meta($post- >ID, 'mb_background_image', prawda);


title: Formatowanie treści w category.php

text:
Używam motywu WordPress 3.5.1 / Twenty Twelve. Używam niestandardowych pól i wyświetlam je w category.php w następujący sposób, php jest konfigurowane wewnątrz category.php w "/* Start the Loop */" $metastime = get_post_meta($post->ID,'user_submit_starttime' ,PRAWDA); echo ''.$metastime.''; $metaetime = get_post_meta($post->ID,'user_submit_endtime',true); echo ''.$metaetime.''; $metaloc = get_post_meta($post->ID,'user_submit_location',prawda); echo ''.$metaloc.''; Działa to tak, jak wyświetlają się pola niestandardowe, gdy przeglądam archiwa kategorii (_pola niestandardowe są wyświetlane pod tytułem każdego posta_), ale zakładam, że istnieje lepsza funkcja do użycia. Podoba Ci się poniższe? get_template_part( 'treść', get_post_format() ); Ponieważ ten kod jest specyficzny dla content.php, chciałbym, aby niestandardowe pola pokazywały się tam, gdzie
 <?php the_content('Czytaj więcej...'); ?>
 Znajduje się w content.php, Jaki jest najlepszy sposób wyświetlania niestandardowych pól, aby wyświetlały się, gdy „treść wejścia” jest wyświetlana w category.php ?


title: Wybierz posty, które pasują do wielu nazw kategorii, muszą pasować do wszystkich wymienionych kategorii

text: Muszę wyszukać posty należące do wielu kategorii, ale muszą one pasować do wszystkich wymienionych kategorii, tak jak gdybym wymienił nazwy kategorii „japoński” i „deserowy”, pasujące posty muszą znajdować się zarówno w kategoriach „japoński”, jak i „deserowy” . Czy istnieje coś takiego jak `category__and` dla nazw kategorii? Używam instancji wordpress multi, a moje identyfikatory kategorii różnią się między moim środowiskiem testowym i produkcyjnym, dlatego nie mogę użyć `category__and`.


title: Dane nie zostaną zapisane na prostym metaboksie, czego mi brakuje?

text:
Potrzebuję drugiej pary oczu, bo jest późno i już tego nie widzę. Dlaczego to nie uratuje? czego mi brakuje? add_action("admin_menu", "tf_book_stuff_create"); function tf_book_stuff_create(){ add_meta_box('tf_book_stuff', 'Książka, 'tf_book_stuff', 'książki'); } funkcja tf_book_stuff() { global $post; $custom = get_post_custom($post->ID); $tf_book_number = $custom["tf_book_number"][0]; $tf_book_reader = $custom["tf_book_reader"][0]; echo $tf_book_isbn; echo $tf_book_level; ?>

ISBN książki:<input name="tf_book_number" value="<?php echo $tf_book_number; ?>" />

Poziom czytania:<input name="tf_book_reader" value="<?php echo $tf_book_reader; ?>" />

 < ?php } add_action("menu_admin", "save_tf_book_stuff"); funkcja save_tf_book_stuff($post_id) { global $post; update_post_meta($post->ID, "tf_book_number", $_POST["tf_book_number"]); update_post_meta($post->ID, "tf_book_reader", $_POST["tf_book_reader"]); }      Dziękuję


title: Jak mogę porównać daty publikacji i aktualizacji pojedynczego posta?

text: W moim motywie chciałbym wyświetlić datę publikacji i (tylko) jeśli post został zaktualizowany po dacie publikacji, wyświetlić również zaktualizowaną datę. Kod w moim motywie wygląda teraz tak: */ tutaj powyżej, aby wyświetlić datę publikacji, a następnie zrób to, aby sprawdzić, czy został zaktualizowany */ if ( get_the_date() != get_the_modified_date() ) { printf( __( '<br> Zaktualizowano: <time class="entry-date" datetime="%1$s">%2$s</time>', 'splatone' ), esc_attr( get_the_date( 'c') ), esc_html( get_the_date() ) ); } Jeśli post został opublikowany i zaktualizowany tego samego dnia, wolałbym nie pokazywać zaktualizowanej linii, ale obecnie jest. Jak mogę porównać daty, aby otrzymać je tylko wtedy, gdy zmieniła się data, a nie tylko godzina?


title: Dostosowywanie wyświetlania niestandardowych typów postów

text: Obecnie mam niestandardowy typ posta i chciałbym mieć inną jego wersję w oparciu o dane wprowadzone przez użytkownika - więc na przykład podczas tworzenia posta użytkownik może wybrać, czy post jest polecany, czy bezpłatny, a następnie byłoby, gdyby-inne oświadczenie, które wyświetlałoby inny obraz, jeśli jest Polecany, i inny, jeśli jest bezpłatny w rzeczywistym poście. Czy ktoś może wskazać mi właściwy kierunek? Każda rada jest bardzo ceniona.


title: Dodaj tagi do niestandardowego typu postu bez łącza menu

text: Opracowałem, jak dodawać tagi do niestandardowych typów postów za pomocą `'taxonomies' => array('post_tag')` Jednak to dodaje kolejne podmenu "Tagi" w moim niestandardowym menu typu postu, którego nie chcę. Jak usunąć to podmenu? ![tutaj wprowadź opis obrazu](http://i.stack.imgur.com/MJycZ.png)


title: vars zapytań w pracy url, ale nie w wywołaniu ajax

text:
Pracuję nad skryptem ajax, który wywołuje stronę wordpress i pobiera posty jako dane. Ale trafiłem w ślepy zaułek. Korzystanie z: http://codex.wordpress.org/WordPress_Query_Vars Kiedy bezpośrednio wpisuję adres URL za pomocą query_vars działa i posty są filtrowane poprawnie, ale kiedy przekazuję to samo za pomocą ajax, wyświetla tylko posty niefiltrowane. Sprawdziłem get parametry przechodzą, ale wp ich nie przechwytuje. co powinienem zrobić? Kod: http://domain.com/blog/wp-content/themes/wovies-bones/getmovies.php?actor=x I działa dobrze, otrzymuję pojedynczy post, który ma niestandardową taksonomię actor = x. Ale kiedy próbuję załadować to samo za pomocą ajax, zachowuje się inaczej i ignorowanie mojego żądania get zwraca wszystkie posty... Część ajax-jquery: $.ajax({ url: templatePath + "getmovies.php", wpisz: "GET", dane: filters_get, cache: false, success: function (data){ console.dir(data); } }); I część php: /* Zdefiniuj je, aby funkcje WP działały wewnątrz tego pliku */ define('WP_USE_THEMES', false); wymagaj('../../../wp-blog-header.php'); ?>
 <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
 <a href="<?php the_permalink() ?>"> <?php if (has_post_thumbnail()) {the_post_thumbnail('homepage-preview');} else {echo '';} ?>
<?php comments_number('0 recenzja','1 recenzja','% recenzji'); ?>

<?php the_title(); ?>
 <?php the_fragment(); ?>

 <?php endwhile; else: ?>  <?php endif; ?>
 filters_get wygląda tak: ?actor=x&


title: Zmieniłem adres URL i nie mogę uzyskać dostępu do mojej witryny, Pomocy?

text: Próbowałem zmienić adres URL i straciłem dostęp do mojej witryny? Wszedłem do ustawień ogólnych i zmieniłem adres URL WordPress i adres URL witryny na mój nowy adres URL. Mam ponownie uruchomioną witrynę, ale nadal nie mam pojęcia, jak skonfigurować nową domenę.


title: Edytuj i spraw, aby class-wc-widget-featured-products.php był odporny na aktualizację

text: W pliku class-wc-widget-featured-products.php muszę usunąć to w wierszu 101: `<?php if ( $r->post->post_title ) echo get_the_title( $r->post->ID ) ; w przeciwnym razie echo $r->post->ID; ?>` i Usuń: `</a> <?php echo $product->get_price_html(); ?>` I zmień znacznik UL na DIV i usuń znaczniki li, co jest w porządku w pliku core ... ale czy ktoś może mi powiedzieć, jak zaimplementowałbym to w pliku funkcji, aby moje zmiany nie zostały usunięte przy każdej aktualizacji woocommerce? Próbowałem dodać edytowany plik do struktury plików woocommerce>classes>widgets w moim motywie potomnym, ale właśnie przeczytałem, że działa to tylko z plikami szablonów. Każda pomoc będzie bardzo mile widziana!! Dziękuję


title: używanie wp_insert_post wewnątrz niestandardowego pola meta

text: To wyjątkowa sytuacja. Mam niestandardowy typ posta fakturowania, który po oznaczeniu go jako „płatny” chcę wygenerować inny niestandardowy typ posta. Mam niestandardowy plik meta, który obsługuje meta faktury i próbuję uruchomić tę funkcję. Obecnie to działa, ale tworzy nieskończoną liczbę nowych postów, wszystkie z tym samym tytułem i tym podobne. Muszę szybko zatrzymać stronę i ma już blisko 1000 postów. Oto moja obecna funkcja, mam nadzieję, że ktoś zobaczy coś, co robię źle. Próbowałem dodać post jako przyszły post, ponieważ czytałem gdzieś, co wyeliminowałoby pętlę ... nie działało. // Generuj CEU jeśli płatność jest wprowadzana ręcznie function generate_ceu( $post_id ){ // sprawdza nonce if (!isset($_POST['invoice_meta_box_nonce']) || !wp_verify_nonce($_POST['invoice_meta_box_nonce'], 'invoice_meta_box_nonce'], 'invoice_box_nonce'] ) { return $post_id; } // sprawdź możliwości if ('invoice' == $_POST['post_type']) { if (!current_user_can('edit_post', $post_id)) { return $post_id; } } elseif (!current_user_can('edit_page', $post_id)) { return $post_id; } // wyjdź przy automatycznym zapisie if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) { return $post_id; } // Sprawdź, czy kwota płatności już istnieje, więc nie tworzymy kolejnego CEU if (!get_post_meta($post->ID, 'invoice_payment_amount', true)) { if (isset($_POST['invoice_payment_amount'])) { $title = 'CEU'.date('YmdHs'); // Utwórz post $new_post = array( 'post_title' => $title, 'post_date_gmt' => strtotime('+5 minutes'), // Ustaw czas publikacji postu na 5 minut od teraz, aby nie zapętlił się 'post_status ' => 'przyszłość', // Wybierz: publikuj, podgląd, przyszłość, wersja robocza itp. 'post_type' => 'ceu', //'post',strona' lub użyj własnego typu postu, jeśli chcesz ); $pid = wp_insert_post($nowy_post); } // koniec sprawdzania wpisu posta } // koniec sprawdzania metadanych } // kończenie funkcji add_action( 'save_post', 'generate_ceu');


title: Jak ukryć „Trackback” w komentarzach podzielonych na strony?

text: **Moja konfiguracja:** 1. Na stronie mojego singla użyłem tego comments_template('', true); aby oddzielić Trackback i regularne komentarze. 2. Nagłówek „Trackbacks dla tego postu” pojawia się tylko wtedy, gdy post ma trackbacki. **Teraz problem polega na tym, że komentarze są podzielone na strony:** 1. Na pierwszej stronie wyświetlany jest trackback, a pod nimi wyświetlane są zwykłe komentarze wraz ze starszymi/nowszymi linkami do stron komentarzy z podziałem na strony. 2. Na głębszych stronach z komentarzami (np. /comment-page-2/) nie są wyświetlane żadne trackbacki, jednak tytuł nadal się pojawia. Czy istnieje sposób na ukrycie „Tytułu trackbacków” na kolejnych stronach, jeśli nie ma już trackbacków?


title: the_fragment nie pokazuje postów

text:
Używam następującego kodu, aby wyświetlić pojedynczy najnowszy post na mojej stronie docelowej: <?php if (have_posts()) : ?> <?php if (($wp_query->post_count) > 1) : ?> < ?php while (have_posts()) : the_post(); ?> <?php the_excerpt() ?> <?php endwhile; ?> <?php else : ?> <?php while (have_posts()) : the_post(); ?> <?php the_excerpt() ?> <?php endwhile; ?> <?php endif; ?> <?php else : ?>
Nie ma tu nic do zobaczenia.
 <?php endif; ?> Mój problem polega na tym, że kod nie tworzy fragmentu. Jaki może być problem?


title: Zmień wzorzec Slug URL taksonomii niestandardowej

text: Poniżej znajduje się układ adresu URL dla mojej witryny przy użyciu typu niestandardowego posta o nazwie `book` i niestandardowej taksonomii tagów o nazwie `book_tag` Nie jestem zadowolony ze sposobu, w jaki Wordpress zapisuje adres URL dla mojej niestandardowej taksonomii tagów. Poniżej znajduje się przykład tego, w jaki sposób mój nowy typ posta i taksonomia obecnie zapisują adresy URL i jak chciałbym to zrobić. Nazwa niestandardowego typu wpisu: book Nazwa/typ niestandardowej taksonomii: book_tag Wyświetlanie indeksu dla mojego niestandardowego typu wpisu... website.com/{custom-post-type}/ Wyświetlanie pojedynczej strony niestandardowego typu wpisu... website.com/ {custom-post-type}/{post-name} Wyświetlanie niestandardowej taksonomii tagów, która jest połączona do użytku na mojej witrynie typu Custom Post Type.com/{custom-taxonomy-type}/{taxonomy-name} taksonomia niestandardowa, aby wyglądała bardziej jak pod niestandardowym typem postu, takim jak ta... website.com/{custom-post-type}/{custom-taxonomy-type}/{taxonomy-name} lub jeszcze lepiej... strona internetowa .com/{custom-post-type}/tag/{taxonomy-name} Tak więc obecnie tag z ślimakiem "css" jest pisany w ten sposób... http://website.com/book-tag/css/ Chciałbym, żeby było bardziej tak... http://website.com/book/book-tag/css/ lub http://website.com/book/tag/css/ Więc moje pytanie, czy to możliwe ? Aby struktura adresu URL pokazywała niestandardową taksonomię, która będzie znajdować się POD niestandardowym typem posta?


title: awaria the_post_thumbnail za pomocą haków

text: Używam tego wielkiego motywu, który prawie całkowicie opiera się na widżetach i suwakach. Teraz staram się uniknąć szukania kodu wyjściowego `post_thumbnail` we wszystkich dołączonych plikach, aby uzyskać awaryjny, który powinien następnie pobrać pierwszy obraz w poście lub na końcu wyświetlić domyślny obraz. Czy istnieje sposób kontrolowania tego poprzez plik `functions`? Każda pomoc jest doceniana. **Rozwiązanie oparte na `post_thumbnail_html` `filter hook` nie wyświetla polecanego obrazu, jeśli nie jest wyraźnie ustawione:** add_filter( 'post_thumbnail_html', 'my_post_thumbnail_fallback', 20, 5 ); function my_post_thumbnail_fallback( $html, $post_id, $post_thumbnail_id, $size, $attr ) { if ( empty( $html ) ) { $image = get_children( "post_parent={$post_id}&post_type=attachment&post_mime_type=image&numberposts=1" ); if($image){ foreach ($obraz jako $attachment_id => $attachment) { $src = wp_get_attachment_image_src($attachment_id); return printf( '' ,$src[0] ,get_option( 'thumbnail_size_w' ) ,get_option( 'thumbnail_size_h' ) ); } } else { return printf( '' ,get_template_directory_uri().'/images/featured/featured.jpg' ,get_option( ' thumbnail_size_w' ), get_option( 'thumbnail_size_h' ) ); } } return $html; } **Inne rozwiązanie, które znalazłem w tym artykule i jest oparte na różnych `hakach akcji` działa zgodnie z przeznaczeniem, które wyświetla (ustawia) pierwszy obraz załącznika w poście jako polecany lub w ostatnim przypadku wyświetla (ustawia) domyślny obraz jako polecany obrazek posta :** function autoset_featured() { global $post; $already_has_thumb = has_post_thumbnail($post->ID); if (!$already_has_thumb) { $attached_image = get_children( "post_parent=$post->ID&post_type=attachment&post_mime_type=image&numberposts=1" ); if ($attached_image) { foreach ($attached_image as $attachment_id => $attachment) { set_post_thumbnail($post->ID, $attachment_id); } } else { set_post_thumbnail($post->ID, '414'); } } } //koniec funkcji add_action('the_post', 'autoset_featured'); add_action('save_post', 'autoset_featured'); add_action('draft_to_publish', 'autoset_featured'); add_action('new_to_publish', 'autoset_featured'); add_action('pending_to_publish', 'autoset_featured'); add_action('future_to_publish', 'autoset_featured'); Teraz... Podoba mi się to rozwiązanie `post_thumbnail_html` `filter hook` i intryguje mnie, że nie działa. Każda pomoc jest doceniana.


title: czy te 3 zapytania można przepisać jako 1 zapytanie?

text: Tworzę witrynę z katalogiem Dentist i mam stronę archiwum taksonomii, która wymaga szczególnego grupowania i sortowania (patrz poniżej). Do tej pory udało mi się to osiągnąć tylko za pomocą 3 WP_Query i 3 pętli. Działa to dobrze, z wyjątkiem tego, że stronicowanie WP jest zepsute. Naprawdę chciałbym się dowiedzieć, czy mimo wszystko te 3 zapytania można by przepisać jako jedno zapytanie, aby paginacja w WP działała normalnie. Zastanawiam się, czy niektórzy, w jaki sposób pojedyncze wp_query (i być może również użyć filtrów WP: http://codex.wordpress.org/Class_Reference/WP_Query#Filters) może osiągnąć te same wyniki w pojedynczym obiekcie wp_query? Spróbuję zilustrować sortowanie i grupowanie: najpierw wyświetl: * taksonomia 'class' == 'premium' * meta_value 'listing_gallery_active' == true * uporządkuj według meta_value 'ważenie', następnie RAND następnie wyświetl: * taksonomia 'class' = = 'premium' * meta_value 'listing_gallery_active' == false * uporządkuj według meta_value 'weighting', następnie RAND, a następnie wyświetl: * taksonomia 'class' NOT IN 'premium' * order by meta_value 'weighting', a następnie RAND Z góry dziękuję za miła pomoc. Zapytanie 1: $premium_gallery_listings_args = array( 'tax_query' => array( array( 'taxonomy' => $taxonomy_archive_query_obj -> taksonomia, 'field' => 'slug', 'terms' => $taxonomy_archive_query_obj), / / show premium array( 'taxonomy' => 'class', 'field' => 'slug', 'terms' => 'premium' ) ), 'meta_query' => array( array( 'key' => ' listing_gallery_active', 'value' => '1', 'compare' => '==' )), 'post_type' => 'dentist', 'posts_per_page' => $max_results_per_page, 'paged' => get_query_var('paged '),                      'Zamów przez' => 'meta_value_num RAND', 'order' => 'DESC', 'meta_key' => 'ważenie', 'meta_value_num' => '0', 'meta_compare' => '>' ); Zapytanie 2: // aukcje premium bez galerii $premium_listings_args = array( 'tax_query' => array( array( 'taxonomy' => $taxonomy_archive_query_obj -> taksonomia, 'field' => 'slug', 'terms' => $taxonomy_archive_query_obj -> slug ), // pokaż tylko premium array( 'taxonomy' => 'class', 'field' => 'slug', 'terms' => 'premium' ) ), 'meta_query' => array( array( 'key' => 'listing_gallery_active', 'value' => '1', 'compare' => '!=' )), 'post_type' => 'dentist', 'posts_per_page' => $max_results_per_page, ' paged' => get_query_var('paged'), 'orderby' => 'meta_value_num RAND', 'ord er' => 'DESC', 'meta_key' => 'ważenie', 'meta_value_num' => '0', 'meta_compare' => '>' ); Zapytanie 3: // standardowe listingi $standard_listings_args = array( 'tax_query' => array( array( 'taxonomy' => $taxonomy_archive_query_obj -> taksonomia, 'field' => 'slug', 'terms' => $taxonomy_archive_query_obj -> slug ), // wyklucz aukcje premium array( 'taxonomy' => 'class', 'field' => 'slug', 'terms' => 'premium', 'operator' => 'NOT IN' ) ), ' post_type' => 'dentist', 'paged' => get_query_var('paged'), 'posts_per_page' => $max_results_per_page, 'orderby' => 'rand' );


Zainstalowałem wordpress przez plik .zip na ubuntu. Kiedy skończyłem konfigurować `wp-config.php`, utworzyłem konto w wordpressie i otworzyłem je przez mojego localhost. Kiedy próbowałem dodać nowe motywy, wyświetla mi się komunikat o błędzie podobny do tego > Wystąpił nieoczekiwany błąd. Coś może być nie tak z WordPress.org lub > konfiguracją tego serwera. Jeśli nadal masz problemy, wypróbuj > fora pomocy. 1. Próbowałem go otworzyć za pomocą proxy i dwóch innych połączeń, ale nie zadziałało. 2. Otworzyłem go w Chrome i Firefox. Nie używać. 3. Ponownie zainstalowałem wordpress po wyczyszczeniu przestarzałych plików i folderów. Wciąż nic się nie wydarzyło. 4. Dałem pełny dostęp do odczytu, zapisu i wykonywania do folderu wordpress w moim folderze var/www i plików w wordpress. Bez użycia 5. Kiedy próbowałem z bezpośrednim połączeniem bez proxy, działa dobrze. Jaki jest problem?


title: Opublikować opcję widoczności w interfejsie motywu do wybrania przez autora?

text:
Czy można zaprezentować autorowi opcję wybrania widoczności postu (publiczny, prywatny, hasło) na temat dodawania posta front-endowego bez ingerowania w rdzeń Wordpress? Wszelkie sugestie są mile widziane. Dziękuję... Oto kod TF. Proszę spojrzeć: <?php if(is_user_logged_in()){ $post_format = ''; if(isset ($_GET['post']) && is_numeric($_GET['post'])){ $post_id = $_GET['post']; $źródło = ''; $źródło_meta = meta::get_meta( $post_id , 'źródło' ); if(is_array($source_meta) && sizeof($source_meta) && isset($source_meta['post_source']) && trim($source_meta['post_source']) != ''){ $the_source = $source_meta['post_source' ]; } $post_edit = get_post($post_id); //WIDOCZNOŚĆ $status = get_post_status($post_edit); $post_categories = wp_get_post_categories ($post_id ); switch(get_post_format( $post_id )){ case 'wideo': $post_format = 'wideo'; $action_edit_video = prawda; przerwanie; przypadek 'audio': $post_format = 'audio'; $action_edit_audio = prawda; przerwanie; case 'link': $post_format = 'link'; $action_edit_link = prawda; przerwanie; case 'obraz': $post_format = 'obraz'; $action_edit_image = prawda; przerwanie; domyślnie: $post_format = 'domyślny'; $action_edit_text = prawda; } if(has_post_thumbnail( $post_id )){ $thumb_id = get_post_thumbnail_id($post_id); } } CosmoUploader::init(); ?>

 <?php if(!isset($post_id)) { ?>
 <?php if( (options::logic( 'upload' , 'enb_image' ) ) ){ ?>
 <?php _e('Image','cosmotheme'); ?>
 <?php } ?> <?php if( options::logic( 'upload' , 'enb_video ' ) ){ ?> <li class="video <?php if( isset($post_id) && $post_format =='video'){echo 'pierwsze karty-wybrane'; } ?>"> <?php _e('Wideo','cosmotheme'); ?>
 <?php } ? > <?php if( options::logic( 'upload' , 'enb_text' ) && !isset($post_id) ){ ?> <li class="text <?php if( isset($post_id) && $post_format = ='standard'){echo 'pierwsze wybrane karty'; } ?>"> <?php _e('Text','cosmotheme'); ?>
 <?php }?> <?php if( options::logic( 'upload' , 'enb_audio' ) && !isset($post_id) ){ ?> <li class="audio <?php if( isset($post_id) && $post_format =='audio'){echo 'pierwsze karty-wybrane'; } ?>"> <?php _e('Audio','cosmotheme'); ?>
 <?php } ?> <?php if( options::logic( 'upload' , 'enb_file' ) && !isset($post_id) ){ ?> < li class="attach <?php if( isset($post_id) && $post_format =='link'){echo 'first tabs-selected'; } ?>">  <?php _e('Plik','motyw kosmetyczny'); ?>
 <?php } ?>
 <?php } ?> <?php if( (options::logic( 'upload' , 'enb_image' ) && !isset($post_id) ) || ( isset($post_id) && $post_format == 'obraz') ){ ?>

<?php jeśli ( isset($post_id) && $post_format == 'obraz'){ _e('Edytuj obraz','cosmotheme'); }else{ _e('Dodaj pisztuka”, „kosmotem”); } ?>
 <?php CosmoUploader::print_form("Załączone obrazy","image",true,true)?> <form method="post" action="/post-item?phase=post" id ="form_post_image" >

<?php _e('Tytuł','cosmotheme')?>
 <input type="text" class="tekst z końcówką front_post_input" name="title" id="img_post_title" value="<?php if(isset($action_edit_image)){echo $post_edit -> post_title; } ?>">
  <?php _e('Bądź opisowy lub interesujący!','Cosmotheme'); ?>

<?php _e('Treść tekstowa','motyw kosmetyczny')?>
 <?php if(class_exists('WP_Editor')){ globalny $ wp_editor; $media_bar = fałsz; /* ustaw na true, aby wyświetlić pasek multimediów */ $settings = array(); /* dodatkowe ustawienia, */ if(isset($action_edit_image)){ echo $wp_editor->editor($post_edit -> post_content, 'image_content', $settings, $media_bar); }else{ echo $wp_editor->editor('', 'image_content', $settings, $media_bar); } }inaczej{ if(isset($action_edit_image)){wp_editor($post_edit -> post_content,'image_content'); }else{ wp_editor('','image_content'); } } ?>

<?php _e('Kategoria','cosmotheme')?>
 <?php if(isset($action_edit_image ) && is_array($post_categories) && sizeof($post_categories) ){ //$cat = get_category( $post_categories[0] ); $args = array( 'orderby' => 'ID', 'order' => 'ASC', 'hide_empty' => 0, 'selected' => $post_categories[0], 'id' => 'img_post_cat', ); }else{ $args = array( 'orderby' => 'ID', 'order' => 'ASC', 'hide_empty' => 0, 'id' => 'img_post_cat', ); } wp_dropdown_categories ($args ); ?>

<?php _e('Tagi','cosmotheme'); ?> (<?php _e('rekomendowane','cosmotheme'); ?>)
 <input id="photo_tag_input" type="text" class="text tag_input tipped front_post_input " name="tags" value="<?php if(isset($action_edit_image)){ echo post::list_tags($post_id); } ?>" placeholder="tag 1, tag 2, tag 3, tag 4, tag 5" autocomplete="off">
<?php _e('Użyj przecinka, aby oddzielić każdy tag. Np. design, wtf, awesome.','cosmotheme '); ?>

 <?php if(options::logic( 'blog_post' , 'show_source' )){ ?>

<?php _e('Źródło','cosmotheme')?>
 <input type="tekst" class="tekst z końcówką front_post_input" name="źródło" id="img_post_source" value="<?php if(isset ($action_edit_image)){ echo $the_source; } ?>">
<?php _e('Przykład: http://example.com',' kosmomotyw”); ?>

 <?php } ?>
  <input type="pole wyboru" class="pole wyboru" <?php if(isset ($action_edit_image) && meta::logic( $post_edit , 'settings' , 'safe' )){ echo 'checked'; } ?> name="nsfw" value="1"> <?php _e('To jest NSFW (niebezpieczne dla pracy)','cosmotheme'); ?>

<?php _e('Widoczność','cosmotheme')?>
 <input id="visibility-radio-public" type="radio" class="radio" <?php if (('publish' === $status) && ! post_password_required($post_id)) echo 'checked="checked"'; ?>value="public" name="visibility" /> Publiczne
 <input id="visibility-radio-password" type="radio " class="radio" <?php if (('publish' === $status) && post_password_required($post_id)) echo 'checked="sprawdzone"'; ?>value="hasło" name="visibility"> Hasło:
 <input id="post_password" type="text" value=" " nazwa="hasło_wpisu">
 <input id="radio-widzialność-prywatne" type="radio" class="radio" <?php if ('prywatne' === $status) echo 'zaznaczone= "w kratę"'; ?>value="private" name="visibility"> <labelfor="visibility-radio-private">Prywatne
 <input type="ukryty" name="post_id" value="<?php echo $post_id; ?>" /> <input type="ukryty" name="akcja" value="update_post_visibility" />  <input type="ukryty" value="image" name="post_format"> <?php if( isset($post_id)) { ?> <input type="hidden" value="<?php echo $post_id; ?>" name="post_id"> <?php } ?>

 <input type="button" id="submit_img_btn" onclick="add_image_post()" value="<?php if(isset($post_id)){ _e('Zaktualizuj post', 'cosmotheme'); }else{ _e('Prześlij post','cosmotheme'); } ?>"/>

</form>
 <?php } ?> A oto funkcja do postu z obrazem: function add_image_post(){ $response = array( 'image_error' => '', 'error_msg' => '', 'title_error' => '', 'post_id' => 0, 'auth_error' => '', 'success_msg' => '' ); $jest_ważny = prawda; if(!is_user_logged_in()){ $is_valid = false; $odpowiedź['error_msg'] = 'błąd'; $response['auth_error'] = __('Musisz być zalogowany, aby wysłać post! ','cosmotheme'); } if(is_user_logged_in() && isset($_POST['post_id'])){$post_edit = get_post($_POST['post_id']); if(get_current_user_id() != $post_edit->post_author){ $is_valid = false; $response['error_msg'] = __('Nie jesteś autorem tego posta. ','cosmotheme'); $response['title_error'] = __('Nie jesteś autorem tego posta. ','cosmotheme'); } } if(!isset($_POST['tytuł']) || trim($_POST['tytuł']) == ''){ $is_valid = false; $response['error_msg'] = 'Tytuł jest wymagany. '; $response['title_error'] = __('Tytuł jest wymagany. ','cosmotheme'); } if(!isset($_POST['załączniki']) || !is_array($_POST['załączniki']) || !isset($_POST['polecane']) || !is_numeric($_POST['polecane') '])){ $jest_ważny = fałsz; $odpowiedź['error_msg'] = 'błąd'; $response['image_error'] = __('Post z obrazem musi zawierać wyróżniony obraz. ','cosmotheme'); } if($is_valid){ /*utwórz post*/ $post_categories = array(1); if(isset($_POST['category_id'])){ $post_categories = array($_POST['category_id']); } $post_content = ''; if(isset($_POST['image_content'])){ } if(isset($_POST['post_id'])){ $new_post = self::create_new_post($_POST['title'], $_POST['tagi '], $post_categories, $post_content, $_POST['post_id']); /*dodaj obraze jako treść*/ }else{ $new_post = self::create_new_post($_POST['title'],$_POST['tags'],$post_categories,$post_content); /*dodaj obrazek jako treść*/ } if(is_numeric($new_post)) { $attachments = get_children( array('post_parent' => $new_post, 'post_status' => 'inherit', 'post_type' => 'attachment' , 'post_mime_type' => 'image', 'order' => 'ASC', 'orderby' => 'menu_order ID') ); foreach ($attachments jako $index => $id) { $attachment = $index; } foreach($_POST['attachments'] as $index=>$imageid){ if($imageid==$_POST['polecane']) { set_post_thumbnail($new_post, $imageid); unset($_POST['attachments'][$index]); } $attachment_post=get_post($identyfikator obrazu); $attachment_post->post_parent=$new_post; wp_update_post ($attachment_post); } if(isset($_POST['nsfw'])){ $settings_meta = array( "bezpieczny"=> "tak"); meta::set_meta( $nowy_post , 'ustawienia' , $ustawienia_meta ); }else{ $settings_meta = array( "bezpieczny"=> "tak"); usuń_post_meta($nowy_post, 'ustawienia', $ustawienia_meta ); } /*dodaj źródło metadanych*/ if(isset($_POST['source']) && trim($_POST['source']) != ''){ $settings_meta = array( "post_source"=> $_POST ['źródło']); meta::set_meta( $nowy_post , 'źródło' , $settings_meta ); }else{ $settings_meta = array( "post_source"=> $_POST['źródło']);usuń_post_meta($nowy_post, 'źródło', $settings_meta ); } /*dodaj metadane URL wideo*/ $image_format_meta = array("type" => 'image', 'images'=>$_POST['attachments']); meta::set_meta( $nowy_post , 'format' , $image_format_meta ); if(isset($_POST['post_format']) && ($_POST['post_format'] == 'wideo' || $_POST['post_format'] == 'obraz' || $_POST['post_format'] = = 'audio')) ){ set_post_format( $nowy_post , $_POST['post_format']); } if(isset($_POST['post_id'])){ /*jeśli post jest edytowany */ $post_status = options::get_value( 'upwczytaj' , 'default_edit_status' ); }else{ /* jeśli post został właśnie utworzony */ $post_status = options::get_value( 'general' , 'default_posts_status' ); } if($post_status == 'publish'){ /*if post został opublikowany natychmiast, pokażemy prmalink użytkownikowi*/ $response['success_msg'] = sprintf(__('Możesz sprawdzić swój post %s tutaj%s.','cosmotheme'),'',''); }else{ $response['success_msg'] = __('Sukces. Twój post oczekuje na moderację.','cosmotheme'); }$odpowiedź['post_id'] = $nowy_post; } } echo json_encode($odpowiedź); Wyjście; }


title: Skonfiguruj ustawienia SMTP w wordpressie

text: Mój formularz kontaktowy w wordpressie nie działa. Gdy formularz kontaktowy jest przesyłany, otrzymuję następującą wiadomość > Wysyłanie wiadomości nie powiodło się " ... ustawienie SMTP nie jest skonfigurowane. Jak mogę ustawić pocztę do wysłania. Używam wtyczki Formularz kontaktowy7. Jak mogę ustawić e-mail tak, aby został wysłany do użytkownika...


Moja strona administracyjna witryny Wordpress zwraca ten błąd. „Dostęp do obszaru administratora Wordpress został tymczasowo wyłączony z powodu powszechnych ataków typu brute force”. Nie można uzyskać dostępu do witryny. Każdy, kto ma podobne doświadczenia, podziel się tutaj. Tak, mam to. Niestety strony wordpress są atakowane przez hakerów przy użyciu techniki bruteforce. Dodaj następujące do pliku .htaccess w folderze instalacyjnym wp i zastąp x.x.x.x swoim adresem IP, z którego chcesz uzyskać dostęp do obszaru administracyjnego. <Pliki ~ "^wp-login.php"> Zamów odmów,zezwól Odmów wszystkim Pozwól od x.x.x.x </Files>


title: Jak uzyskać informacje o metapolu z CPT połączonego połączeniem Posts2Posts?

text: Oto, co próbuję zrobić. Mam dwa niestandardowe typy postów, dostawców i produkty. Są one połączone za pomocą wtyczki Posts2Posts. Stanowisko dostawcy ma powiązane z nim różne pola meta, w tym niektóre dla ich adresu. To, co chcę zrobić, to wywołać produkt, a następnie a) uzyskać połączonego dostawcę, a następnie b) zapytać o meta wartości dla tego dostawcy. Powodem, dla którego tego chcę, jest to, że muszę być w stanie pokazać odwiedzającemu wszystkie produkty wykonane w określonym stanie, a informacje o stanie znajdują się w CPT dostawcy, a nie w CPT produktu. Myśli?


title: Aktualizacja statusu Twittera za pomocą multimediów za pomocą wp_remote_post

text: Muszę mieć możliwość aktualizowania statusu na Twitterze, używając tylko funkcji dozwolonych przez Wordpress VIP. Używam tej biblioteki: https://github.com/Automattic/wp-codebird Która oczywiście jest zepsuta, żadna z funkcji, które przesyłają obraz, po prostu nie działają. Wysłałem już problem https://github.com/Automattic/wp-codebird/issues/6 Ale projekt jest martwy, wątpię, aby jakiekolwiek aktualizacje kiedykolwiek go ponownie uderzyły, więc muszę sam naprawić ten problem za pomocą tego starego kodu Jestem zmuszona do pracy. Zasadniczo myślę, że mogę łatwo naprawić ten problem, jeśli wiem, jakie zmienne muszę podać wp_remote_post do update_with_media. Oto, co obecnie karmię i odpowiedzi, które otrzymuję. // adres URL Proszę $url = 'https://api.twitter.com/1.1/statuses/update_with_media.json'; // drugi argument do wp_remote_post $params = Array ( [metoda] => POST [timeout] => 5 [przekierowanie] => 5 [httpwersja] => 1.1 [blokowanie] => 1 [nagłówki] => Tablica ( [ Autoryzacja] => OAuth oauth_consumer_key="[MÓJ KLUCZ KONSUMENTA]", oauth_nonce="8429c5ec", oauth_signature="V3vGmKCYCp2yDjCFl5OTKzEfVlc%3D", oauth_signature_th="th895_tou851", oauth_signature_th="2895_oken-SHA" ", oauth_version="1.0" [Expect] => [Content-Type] => multipart/form-data ) [body] => Array ( [status] => Testowanie http://127.0.0.1:7070/?p =57 [media[]] => @/home/dillon/Code/lib/WordPress/wp-content/uploads/2013/11/Selection_001.png ) [cookies] => Array ( ) [sslverify] => ); // to jest obiekt zwrócony do mnie $response = Array ( [errors] => Array ( [0] => stdClass Object ( [code] => 195 [message] => Brakujący lub nieprawidłowy parametr adresu URL. ) ) [httpstatus ] => 403 ); // to jest zwracane do mnie, jeśli usunę Content-Type z tablicy nagłówków $response = Array ( [errors] => Array ( [0] => obiekt stdClass ( [message] => Nie można uwierzytelnić [ kod] => 32 ) ) [httpstatus] => 403 );


title: Zmienić domyślny wybór opcji „Umieść lub połącz”?

text: Chcę, aby domyślne USTAWIENIA WYŚWIETLANIA ZAŁĄCZNIKA dla plików multimedialnych (nie obrazów) były ustawione na „Link do pliku multimedialnego”. Znalazłem fragmenty update_option dla obrazów, ale nie audio/wideo. Nie można znaleźć odpowiednika w mediach parametru „image_default_link_type”, aby ustawić wstępnie wybraną opcję. Jakaś pomoc? Bardzo doceniane.


title: Kategorie Wordpress: funkcja używająca niestandardowego SQL do zwracania tablicy określonych identyfikatorów kategorii

text: Opracowuję niestandardowy motyw, który używa kategorii do pozycjonowania, z których wszystkie zaczynają się od podkreślenia (np. _position1). Mam zapytanie SQL, jak poniżej, aby uzyskać listę tych kategorii (tych zaczynających się od podkreślenia). SELECT nazwa,term_id FROM `wp_terms` GDZIE nazwa LIKE '\_%'; Jak mam przejść do przekształcenia tego w funkcję, która zwraca listę identyfikatorów kategorii? Chodzi o to, że ta lista identyfikatorów może zostać przekazana do `wp_list_categories()` w celu wykluczenia np. (gdzie get_positional_ids użyłoby powyższego SQL do zwrócenia listy identyfikatorów) <?php $excludeids = get_positional_ids(); $args = array('exclude'=> $excludeids); wp_list_categories($args); ?> Jakieś pomysły jak to zrobić? Dziękuję.


title: Prawidłowe użycie funkcji add_option()?

text: Chciałbym dodać zmienną do bazy danych mojej witryny. Użyłem add_option() do tego, ale to nie działa jakoś poprawnie. Prawdopodobnie nie ratuje to opcji. mój kod to: $heatall3 = '10000'; //to przykład register_setting('heatvalueoverall','heatvalueoverall'); update_option('ogrzewaniecałkowita',$ogrzewaniewszystko3); kod, który miałby otrzymać opcję: $HeatValue = get_option('heatvalueoverall'); Czy to właściwy sposób? Jaki jest problem z tym kodem. Z góry bardzo dziękuję.


title: Zamieszanie dotyczące sposobu wyświetlania niestandardowych danych pola

text: Hej, jestem nowy w WordPressie. Sprawdziłem tutaj kodeks i inne tematy, po prostu nie rozumiem, jak wyświetlić moje niestandardowe pole, które ustawiłem w obszarze pod moim edytorem postów. Nazwa to „MyField”, a wartość „To jest mój niestandardowy tekst posta”. Teraz chcę włączyć moje pole do pętli kategorii, aby pojawiło się zamiast standardowego fragmentu. `<?php the_meta(); ?>` pokazuje oczywiście wszystkie pola niestandardowe, nie o to mi chodzi. Próbowałem dołączyć `<?php get_post_custom_values('MyField'); ?>`, które nic nie zmieniło, czy muszę coś z tym zrobić po tym jak to nazwać? Jak mogę to zrobić?


title: Pokaż pozycję podmenu z menu głównego na urządzeniach mobilnych

text: Menu nadrzędne mojego głównego menu Wordpress (poziomego) nawigacji pojawia się po najechaniu myszą. Stworzyłem menu przełączania / zwijania dla rozmiarów ekranu poniżej 768px. Masz pomysł, jak wyświetlić menu nadrzędne bez myszy - powinny pozostać otwarte w widoku mobilnym...?


title: Używasz w 'category_name' w '$query->set();'?

text: Oto funkcja, którą mam w functions.php mojego motywu: function better_editions( $query ) { // Kategorie działają jako 'Edycje' na mojej stronie $get_edition = get_query_var( 'category_name' ); if( $get_edition !== '' ) { $edition = get_term_by( 'slug', $get_edition, 'category' ); if( $edition && !is_wp_error( $edition )) { $edition = $get_edition; } } if ( $query->is_category() && isset($edition) && $query->is_main_query() ) { $query->set( 'post_type', array( 'post' ) ); $query->set( 'nazwa_kategorii', $edycja.', intl' ); } } add_action( 'pre_get_posts', 'better_editions' ); Używam tej funkcji do wyświetlania wpisów należących do kategorii „Międzynarodowy (intl)” we wszystkich kategoriach (we wszystkich archiwach kategorii, listach wpisów kategorii itp.). Jak się dowiedziałem, aby zdefiniować wiele kategorii za pomocą `category_name` w `$query->set();`, jest to jedyny sposób, chyba że się mylę: $query->set( 'category_name', 'category1, kategoria2' ); I właśnie to robię, jak pokazano w funkcji znacznie powyżej. Problem polega na tym, że przy włączonej funkcji otrzymuję ten błąd: > **Uwaga:** Konwersja tablicy do ciągu w **/var/www/wp.dev/public/wp- > admin/edit.php** on line **225** **Błąd jest widoczny** tylko przy włączonym debugowaniu i tylko na stronie „Wszystkie posty” dla określonej kategorii. Na przykład... http://wp.dev/wp-admin/edit.php?category_name=intl ...powyższy link zawiera listę wszystkich postów w kategorii "Międzynarodowe (intl)" w wp-admin. Co robię źle w tej funkcji? Jak to naprawić? **UWAGA:** Nie chcę używać `!is_admin()`, ponieważ chcę, aby funkcja miała zastosowanie również do wp-admin.


title: WP myli „linki do moich artykułów” z „komentarzami”?

text: Dodałem nowy artykuł na moim blogu WordPress. W tym artykule zamieściłem link do jednego z moich poprzednich artykułów na tym samym blogu. Ten artykuł poinformował mnie, że mam nowy komentarz. Komentarz był właściwie linkiem do niego z mojego nowego wpisu. Poszedłem dalej i zatwierdziłem to, a teraz ten artykuł mówi " _jeden komentarz_ " pod spodem, ale nie ma tam żadnego komentarza. Jestem całkiem nowy w prowadzeniu bloga WP, więc nie wiem, czy jest to błąd WP, funkcja, czy coś, co zrobiłem źle.


title: Którego zaczepu użyć podczas dodawania ajax po stronie skierowanej do widza?

text: Mam krótki kod, który zawiera formularz. Chcę używać jQuery/Ajax do POSTingu. W tym celu chcę dodać javascript do strony, na której dodawany jest shortcode? Jakiego haka powinienem użyć? 1. wp_enqueue_scripts 2. wp_print_scripts 3. wp_print_footer_scripts


title: WP_DEBUG nie jest ustawiony, ale nadal otrzymuję ostrzeżenia

text: Jeśli WP_DEBUG nie jest ustawione, jak rozumiem, nigdy nie powinieneś widzieć ostrzeżeń. Ale w niektórych witrynach na niektórych serwerach wciąż widzę kilka. Nie wszystkie ostrzeżenia, które byłyby wyświetlane po ustawieniu WP_DEBUG, ale kilka wybranych. Próbowałem zmienić poziom błędu w php.ini, ale wydaje się, że nie ma to wpływu na to, czy ostrzeżenia pojawiają się, czy nie, ale pojawiają się one w różnych ilościach na różnych serwerach (tj. Brak ostrzeżeń podczas opracowywania, jedno ostrzeżenie na przemieszczaniu i kilka dodatkowych ostrzeżeń na produkcji).


title: Niestandardowy szablon strony i wykluczenie kategorii

text: Mam bloga (bernsteinbear.com), który używa motywu TwentyEleven. Próbuję utworzyć niestandardowy szablon strony dla strony głównej (strony bloga), który pobiera wszystkie posty z wyjątkiem kategorii „Komiks”. Udało mi się to, tyle że paginacja się popsuła... Jak mogę wykluczyć kategorię z głównego bloga, mieć ją tylko na osobnej stronie i mieć poprawnie działającą paginację? Jestem oszołomiony... Dziękuję! Max EDIT: Mam pełny dostęp SSH do mojego serwera i mogę edytować wszystko. Bez ograniczeń.


title: Ile osób może jednocześnie korzystać z tego samego konta wordpress?

text: Nie mogę znaleźć odpowiedzi. Nie wiem, ile osób może korzystać z SAMEgo konta w TYM SAMYM okresie czasu w WP. Czy spowoduje to jakiś problem techniczny, jeśli dane konto będzie mogło publikować? Co jeśli NIE wolno publikować? Dziękuję Ci!


title: Zatrzymaj proces zapisywania, gdy metabox jest nieprawidłowy

text: > **Możliwy duplikat:** > Zapobiegaj publikowaniu postu, jeśli pola niestandardowe nie są wypełnione > Sprawdź przed opublikowaniem, czy istnieje już post z bieżącym polem niestandardowym > wartość Próbuję dodać kilka metaboksy do strony edycji posta. Zawierają niezbędne dane do mojego szablonu, więc muszę się upewnić, że są wypełnione i prawidłowe. Weryfikacja ich nie stanowi problemu. Przed zapisaniem danych sprawdzam je. Ale co zrobić, gdy są niepoprawne? Chciałbym zatrzymać proces zapisywania i wydrukować jakiś ładny komunikat o błędzie, ale nie znalazłem żadnego rozsądnego sposobu, aby to zrobić. Post nie zostanie zapisany bez prawidłowo wypełnionych formularzy. Dzięki za pomoc.


title: Zapobiegaj publikowaniu postów, jeśli pola niestandardowe nie są wypełnione

text: Mam niestandardowy typ wpisu „Zdarzenie”, który zawiera niestandardowe pola daty/godziny rozpoczęcia i zakończenia (jako metaboksy na ekranie edycji posta). Chciałbym mieć pewność, że Wydarzenie nie zostanie opublikowane (lub zaplanowane) bez uzupełnienia dat, ponieważ spowoduje to problemy z szablonami wyświetlającymi dane Wydarzenia (poza tym, że jest to konieczne!). Chciałbym jednak mieć możliwość organizowania wydarzeń Draft, które nie zawierają prawidłowej daty, podczas gdy są w przygotowaniu. Myślałem o zaczepieniu `save_post` do sprawdzenia, ale jak mogę zapobiec zmianie statusu? **EDIT1:** To jest hak, którego używam teraz do zapisania post_meta. // Zapisz funkcję danych metaboksu ep_eventposts_save_meta( $post_id, $post ) { if ( define( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) return; if ( !isset( $_POST['ep_eventposts_nonce'] ) ) return; if ( !wp_verify_nonce( $_POST['ep_eventposts_nonce'], plugin_basename( __FILE__ )) ) return; // Czy użytkownik może edytować post lub stronę? if ( !current_user_can( 'edit_post', $post->ID ) ) return; // OK, jesteśmy uwierzytelnieni: musimy znaleźć i zapisać dane // Umieścimy je w tablicy, aby ułatwić pętlę //debugowanie //print_r($_POST); $metabox_ids = array( '_start', '_end' ); foreach ($metabox_ids jako $klucz ) { $events_meta[$klucz . '_data'] = $_POST[$klucz . '_data']; $events_meta[$klucz . '_time'] = $_POST[$klucz . '_czas']; $events_meta[$klucz . '_timestamp'] = $events_meta[$klucz . '_data'] . ' ' . $events_meta[$klucz . '_czas']; } $events_meta['_location'] = $_POST['_location']; if (array_key_exists('_end_timestamp', $_POST)) $events_meta['_all_day'] = $_POST['_all_day']; // Dodaj wartości $events_meta jako pola niestandardowe dla każdego ( $events_meta as $key => $value ) { // Przejdź przez tablicę $events_meta! if ( $post->post_type == 'weryfikacja' ) return; // Nie przechowuj niestandardowych danych dwa razy $value = implode( ',', (array)$value ); // Jeśli $value jest tablicą, przekształć ją w CSV (mało prawdopodobne) if ( get_post_meta( $post->ID, $key, FALSE ) ) { // Jeśli niestandardowe pole ma już wartość update_post_meta( $post->ID , $klucz, $wartość ); } else { // Jeśli niestandardowe pole nie ma wartości add_post_meta( $post->ID, $key, $value ); } if ( !$wartość ) usuń_post_meta( $post->ID, $klucz ); // Usuń jeśli puste } } add_action( 'save_post', 'ep_eventposts_save_meta', 1, 2 ); **EDIT2:** i to właśnie próbuję użyć do sprawdzenia danych postu po zapisaniu do bazy danych. add_action( 'save_post', 'ep_eventposts_check_meta', 99, 2 ); function ep_eventposts_check_meta( $post_id, $post ) { //sprawdź, czy metadane są kompletne, gdy post jest publikowany //print_r($_POST); if ( $_POST['post_status'] == 'opublikuj' ) { $custom = get_post_custom($post_id); //upewnij się, że obie daty są wypełnione if ( !array_key_exists('_start_timestamp', $custom ) || !array_key_exists('_end_timestamp', $custom )) { $post->post_status = 'draft'; wp_update_post($post); } //upewnij się, że start < end elseif ( $custom['_start_timestamp'] > $custom['_end_timestamp'] ) { $post->post_status = 'draft'; wp_update_post($post); } inny { powrót; } } } Głównym problemem jest problem, który został opisany w innym pytaniu: użycie `wp_update_post()` w podpięciu `save_post` wyzwala nieskończoną pętlę. **EDIT3:** Wymyśliłem sposób, aby to zrobić, podpinając `wp_insert_post_data` zamiast `save_post`. Jedynym problemem jest to, że teraz `post_status` jest przywrócony, ale teraz pojawia się myląca wiadomość o treści „Opublikuj post” (poprzez dodanie `&message=6` do przekierowanego adresu URL), ale status jest ustawiony na Wersja robocza. add_filter( 'wp_insert_post_data', 'ep_eventposts_check_meta', 99, 2 ); function ep_eventposts_check_meta( $data, $postarr ) { //sprawdź, czy metadane są kompletne, gdy post jest publikowany, w przeciwnym razie wróć do wersji roboczej if ( $data['post_type'] != 'event' ) { return $data; } if ( $postarr['post_status'] == 'opublikuj' ) { $custom = get_post_custom($postarr['ID']); //upewnij się, że obie daty są wypełnione if ( !array_key_exists('_start_timestamp', $custom ) || !array_key_exists('_end_timestamp', $custom )) { $data['post_status'] = 'draft'; } //upewnij się, że start < end elseif ( $custom['_start_timestamp'] > $custom['_end_timestamp'] ) { $data['post_status'] = 'draft'; }         //wszystko w porządku! else { return $dane; } } return $dane; }


title: Jak mogę wykluczyć dynamiczny adres URL, aby wyświetlić wyskakujące okienko utworzone za pomocą wtyczki „Wordpress Popup”?

text: To może być strzał z daleka, ale pomyślałem, że powinienem dać mu szansę. Używam Popup WordPress, aby pokazać wyskakujące okienko, gdy użytkownik trafi na określone strony w witrynie. Tworzysz wyskakujące okienko i możesz je wykluczyć z wyświetlania pod określonymi adresami URL. Mam witrynę z ofertami i nie chcę, aby wyskakujące okienko pojawiało się na stronie koszyka. Problem, z którym mam do czynienia, polega na tym, że strona ma dynamiczny adres URL i wygląda tak: 'http://domain.com/cart/?add_to_cart=329' Próbowałem zapisać to w następujący sposób: 1. http ://domain.gr/cart/ 2. http://domain.gr/cart/?add_to_cart=/ 3. http://domain.gr/cart/?add_to_cart=%/ 4. http://domena. gr/cart/?add_to_cart=?/ 5. http://domain.gr/cart/?add_to_cart/ Jakieś pomysły, jak sobie z tym poradzić? Z góry dziękuję za wszelką pomoc! Jestem tutaj zdesperowany! :) Kat


title: Dane wyjściowe z tablicy Meta Box

text:
Stworzyłem metabox i pomyślnie przechowuje dane postów, ale mam problemy z wyprowadzeniem zawartości i wyświetleniem jej w rozsądny sposób - poza moją ograniczoną wiedzą na temat PHP. Jestem pszczelarzem i chcę rejestrować przeglądy moich uli - więc dla każdego ula jest ewidencja z ustaloną liczbą pól. Więc chcę przejść przez tablicę kolonii dla wszystkich gałęzi, tj. dopóki $hive nie będzie pusty, i wyprowadzić dane w postaci tabeli z 1 wierszem na gałąź. Obecnie udało mi się ręcznie stworzyć pierwszy wiersz tabeli, ale nie wiem, jak skonfigurować pętlę, która mogłaby to za mnie zrobić. <?php if (have_posts() ):?> <?php while ( have_posts() ) :the_post();?> <?php $meta=$simple_mb->the_meta(); // potrzebna jest tutaj pętla, aż wszystkie instancje kolonii zostaną osiągnięte $hive = $meta['colony'] [0]['hive']; $królowa = $meta['kolonia'] [0]['cb_ex4_cb']; $bias = $meta['colony'] [0]['cb_ex4_bias']; $potomstwo = $meta['kolonia'] [0]['cb_ex4_bcom']; $stores = $meta['colony'] [0]['stores']; $mojacomm = $meta['kolonia'] [0]['komentarz']; $plan = $meta['colony'] [0]['plan']; ?> <tabela id="dowolnatabela" podsumowanie="Inspekcje kolonii" cellspacing="0">
 < ?php echo $inspect;?> <?php the_title(); ?>

  <?php echo $hive; ?>
<?php echo $królowa; ?>

<?php echo $brood; ?>

<?php echo $stores; ?>
	 <?php echo $mojakomend; ?>	 <?php echo $plan; ?>

 <?php endwhile; ?> <?php endif; ?>


title: Jak używać ajax, aby uzyskać wiele wyjść?

text: jQuery.ajax({ type: "POST", url:"wp-admin/admin-ajax.php", data:'action=nafham_list_cats_selection&selection_id=' + $selection_id, success:function(wyniki){ jQuery(.semester_selection" ).empty(); jQuery(".semester_selection").prop('disabled', false); jQuery(".semester_selection").append(results); } }) To jest wywołanie ajax, które kończę, poniżej znajduje się funkcja, która wysyła dane: function nafham_list_cats_selection() { if(isset($_POST['selection_id'])){ nafham_get_listed_cats($_POST['selection_id']); } } Jak mogę pozwolić funkcji wypisać dwie wartości, abym mógł użyć success:function(results1, results2){


title: Wyczyść wp-content/upload/folder

text: Czy istnieje (łatwy) sposób sprawdzenia, czy wszystkie moje obrazy znajdują się w bazie danych? Chcę sprawdzić mój folder przesyłania, aby sprawdzić, czy każdy plik ma rekord „załącznik” w tabeli „wp_posts”. Znam dodatkowe obrazy, które tworzy WP. Po kilku migracjach obawiam się, że mam za dużo na głowie, chcę to sprawdzić


title: Fragment zniknął

text: Mój motyw automatycznie przypisuje przed znacznikami `<!--more-->` jako fragment.I wyświetla fragment na stronie głównej. Teraz chcę dodać Google Adsense po kodzie `<!-- more -->`. Napisałem tę funkcję i dodaję ją do functions.php function google_adsense($content) { if(is_single()) { global $post; $IDPoczty = $Poczta->ID; $more_span = '' ; return str_replace($more_span, $more_span . " " . google_reklam_ekle(), $content); } } function google_reklam_ekle() { return "   "; } add_filter('the_content', 'google_adsense'); Teraz fragmenty nie znikają fragmentami. Kiedy usunę te funkcje, pojawiają się ponownie. Na pojedynczej stronie kod działa bardzo dobrze. Możesz sprawdzić moje posty na blogu. http://www.teknoblogo.com . Po tagu znajduje się reklama AdSense. Ale zanim dodasz te kody Adsense, pierwsza część mojego postu (mam na myśli przed tagiem `<!--more-->`) pojawia się . Czy możesz dać mi pomysł ?


title: Wybierz niestandardową taksonomię z opcji motywu

text: Próbowałem wyświetlić listę rozwijaną moich niestandardowych terminów taksonomii na stronie opcji motywu, ale bez powodzenia. Spojrzałem tutaj na kilka postów i postępowałem zgodnie ze wskazówkami, ale kod po prostu nie wyświetla terminów taksonomii. /** Pory roku */ $season_terms = get_terms('season'); $podatek_sezonowy = tablica(); if( $season_terms ) { foreach( $season_terms as $season ) { $season_tax[$season->term_id] = $season->name; } } array_unshift( $season_tax, 'Wybierz sezon' ); Otrzymuję opcję „Wybierz sezon”, a następnie pustą opcję dla każdego z moich warunków (w tej chwili dwa). Co może być tego przyczyną? Jestem zakłopotany na tym??? Każda pomoc jest bardzo ceniona! Dzięki


title: Zapytanie i zamówienie postów według pól niestandardowych

text: Próbuję wysłać zapytanie o niestandardowy typ wpisu „jogos”, w którym wartość meta „data_de_lancamento” (data uruchomienia) jest <= niż dzisiejsza. To pole ma format dd/mm/rr. Zwrócone posty z tego zapytania muszą być następnie uporządkowane malejąco według niestandardowego pola „widoki”. Mój obecny kod to: date_default_timezone_set('Europa/Lizbona'); $data = data("d/m/r"); globalny $wpdb; $sql = "SELECT wposts.* FROM $wpdb->posts wposts, $wpdb->postmeta wpostmeta, $wpdb->postmeta wpostmeta2 WHERE wposts.ID = wpostmeta.post_id AND wposts.ID = wpostmeta2.post_id AND wpostmeta.meta_key = 'views' AND wpostmeta2.meta_key = 'data_de_lancamento' AND wpostmeta2.meta_value < $data AND wposts.post_type = 'jogos' AND wposts.post_status = 'publish' ORDER BY wpostmeta.meta_value ASC"; $ wynik = $ wpdb-> get_results ($ sql, OBIEKT);


title: pobierz załączniki do wszystkich postów danego typu postu

text: Tworzę widżet, który pokazuje zestaw obrazów z ostatnich niestandardowych postów. Chcę uruchomić następujące zapytanie: SELECT p.* FROM wp_posts p WHERE post_type='attachment' AND post_mime_type LIKE 'image%' AND post_parent IN ( SELECT ID FROM wp_posts WHERE post_type ='my_custom_post_type' ) ORDER BY post_date DESC LIMIT 10; i otrzymaj tablicę obiektów załączników. Nie wiem, jaka jest kanoniczna metoda WordPressa na zrobienie czegoś takiego. Od czego powinienem zacząć?


title: Jak mogę sprawdzić, kto zmienił hasło?

text: Niedawno z naszej firmy odszedł pracownik. Kiedy odeszli, zmieniłem wszystkie ich hasła i usunąłem dostęp do poczty e-mail itp. Zmieniłem również hasło na naszej stronie Wordpress do logowania administratora, a główny adres e-mail na mój własny. Ale nie zmieniłem własnego hasła do poczty e-mail. Wczoraj otrzymałem od Wordpressa dwa e-maile z informacją, że pojawiła się prośba o zresetowanie hasła. Jeden z e-maili został kliknięty (możesz to powiedzieć w Gmailu) i zmieniono hasło do naszego Wordpressa. Natychmiast zmieniłem je z powrotem, a następnie zmieniłem własne hasło do poczty e-mail. Czy mogę w jakiś sposób śledzić, kto zażądał zmiany hasła i kto uzyskał dostęp do mojej poczty e-mail. (Korzystamy z Gmaila za pośrednictwem Google Apps tutaj)? Podejrzewam, że to była nasza stara pracownica, ponieważ mogła znaleźć moje hasło i zanotować je przed wyjazdem. Ale nie mogę powiedzieć, co robiła w Wordpressie, kiedy tam była, i czy w rzeczywistości to była ona. Dzięki za pomoc.


title: Wyświetlanie daty dołączenia do członka na stronie

text: Dodałem niestandardowe pole do profilu użytkownika z pytaniem o datę dołączenia do mojego klubu. Jak mogę pobrać te dane i wyświetlić je na stronie, aby uczcić rocznice użytkowników? (na przykład: W maju ta strona wyświetli wszystkich użytkowników, którzy pierwotnie dołączyli w maju według nazwy, miesiąca i dnia) Wiem, że potrzebuję do tego pętli, tylko nie jestem pewien, jak pobrać dane z pola profilu.


title: get_option uwzględnij <br /> w moim adsense

text:
Jak napisano w tytule, zapisałem w wp-options -> option_value kod AdSense, ale kiedy próbuję wyświetlić go na stronie w kodzie, otrzymuję "
" Dlaczego to otrzymuję?


title: Niestandardowe rozmiary obrazów tylko dla miniatur

text: Rozwiązuję jeden problem, używam w szablonie kilku różnych rozmiarów obrazów (add_image_size), ale używam ich tylko do miniaturek, zupełnie niepotrzebne jest tworzenie tych rozmiarów dla każdego obrazu wgrywanego do WP, mam kilkadziesiąt tysięcy zdjęć w mediach . Nie wiesz, jak rozwiązać ten pomysł? Dzięki za wszelką pomoc.


title: Zapisywanie niestandardowych danych dla każdego użytkownika

text: Pozwalam użytkownikom na zapisywanie notatek w mojej witrynie Wordpress. Mogą to zrobić dopiero po zalogowaniu się do serwisu. Teraz chcę zapisać ich notatki w tabeli bazy danych i powiązać je z identyfikatorem użytkownika, tj. Jeśli użytkownik zapisał 2 notatki, po zalogowaniu się i przejściu do „mojej strony” powinien zobaczyć 2 zapisane notatki. Czy ktoś może mi pomóc, jak to zrobić? Mogłem znaleźć wiele informacji na temat zapisywania niestandardowych metadanych użytkownika podczas rejestracji. Ale nie mogłem znaleźć żadnej pomocy dotyczącej zapisywania informacji związanych z kontem użytkownika po jego zalogowaniu. Dziękujemy.


title: Rozwiązać właściwości produktu za pomocą niestandardowych taksonomii?

text: Muszę dodać około 50 właściwości do produktu, takich jak wysokość, szerokość, lokalizacja itp. Stworzyłem niestandardowe taksonomie dla każdej właściwości i napotkałem poważne problemy. Przede wszystkim w interfejsie jest bałagan! Każda taksonomia zajmuje zbyt dużo miejsca. Niektóre właściwości powinny być prezentowane użytkownikowi za pomocą przycisków opcji, pól wyboru i rozwijanych menu. Jaka jest najlepsza praktyka? Użyć zamiast tego pól niestandardowych i stracić funkcjonalność taksonomii?


title: tworzenie dynamicznego menu w wordpressie

text: Próbuję użyć dynamicznego menu wordpressa! Więc próbuję utworzyć listę rozwijaną na podstawie kategorii, moje pytanie brzmi ... Muszę zablokować pierwszy (tytuł / nazwa kategorii) za dostęp .... teraz zajmie stronę z wszystkimi wpisami z tej kategorii, Muszę tylko wyświetlić kategorie w menu, ale użytkownicy nie mogą na nie kliknąć! Czy wiecie, jakiej funkcji powinienem użyć, aby to zrobić? Z poważaniem


title: Czy admin_print_scripts-$hook_suffix działa w przypadku zagnieżdżonych ścieżek do poszczególnych plików?

text: Czy podpięcie `admin_print_scripts-$hook_suffix` może być użyte do podpięcia, które zostało utworzone tak jak `$hookname = get_plugin_page_hookname("my-quiz/lib/admin/$code_page", '' );`? .. gdzie `$strona_kodowa` to `nazwa_pliku.php`. Próbowałem i wydaje się, że nie działa. Myślę, że to prawdopodobnie ze względu na ścieżkę pliku? **AKTUALIZACJA** To, co zostanie zarejestrowane przez powyższy kod to 'admin_page_my-quiz/lib/admin/question_form', ale działa to tylko na stronie, jeśli to zrobisz: <a href="<?php echo admin_url('admin.php ?page=my-quiz/lib/admin/question_form.php&question=edit&question='.$question->ID); ?>" class='edit'> <?php _e('Edit', 'my-locale') ; ?> </a> **Muszę dodać sufiks .php**, aby ten link działał, w przeciwnym razie pojawia się błąd „nie masz uprawnień”. Funkcja @t31os wyświetla 'nmsi-quiz/lib/admin/question_form.php', więc to nie pasuje do 'admin_page_my-quiz/lib/admin/question_form' to działa - add_action( 'admin_print_scripts-'.'my-quiz/ lib/admin/question_form.php', array($this,'enqueue_my_js')); **Żądany kod:** $plugin_scripts = array('question_form.php', 'manage_questions.php'); foreach($plugin_scripts as $code_page) { $hookname = get_plugin_page_hookname("my-quiz/lib/admin/$code_page", '' ); $_registered_pages[$hookname] = prawda; //fb($nazwa haczyka); }


title: tag mikroformatu hrecipe do „polecanego obrazu”

text:
Mam stronę wykonaną w wordpressie, która zawiera przepisy. Teraz chciałbym dodać tag mikroformatu „zdjęcie” `hrecipe`, aby mieć miniaturę w wynikach wyszukiwania Google (tag zdjęcie hrecipe) Moje zdjęcia z przepisami pochodzą z sekcji polecanych obrazów. Jak mogę teraz dodać `itemprop="photo"` do tagu `<img>`? Na przykład:  Tutaj utworzono moją miniaturę:
 <?php if( !is_singular() ) { ?> <a title="<?php printf(__('Stały link do %s', 'zilla'), get_the_title()); ?>" href="<?php the_permalink(); ?>">< ?php the_post_thumbnail('duży blog'); ?> <?php } else { the_post_thumbnail('blog-duży'); } ?>


title: Czy zatrzymać WordPress przekierowywanie strony komentarza-1 na stronę posta?

text: Chciałbym mieć osobną stronę dla komentarzy do posta, tak aby ta strona: `/2011/02/post-name/` po prostu wyświetlała post, a następnie klikasz link, aby wyświetlić komentarze, przenosząc cię do strona taka post, aby ludzie nie musieli przewijać go za każdym razem, a także stylizować rzeczy nieco inaczej). To by zadziałało, ale WordPress przekierowuje `comment-page-1` do strony posta - potrzebuję, aby zachować `comment-page-1` w adresie URL. czy to możliwe? Jak mogę to zrobić? Dziękuję!


title: Edytor usuwa tagi <p>

text:
Jak powstrzymać edytor przed usunięciem moich znaczników `<p>` i „pustych (& nbsp;)” elementów div na stronach? Ponieważ @scribu poprosił o przykładowy kod tutaj, to: Wejście:
tekst

 Wyjście: tekst


title: Globalna nawigacja w multisite: problem z kategoriami

text: Konfiguracja: WordPress v 3.0.4, włączona sieć wielostanowiskowa, Motyw: Twentyten child, lokalna instalacja z MAMP 1.9.4, PHP 5.3.2, przy użyciu SUBFOLDERS (nie subdomen) dla 4 podstron * * * Problem: To samo globalne menu nawigacyjne, ale podwitryny tworzą adresy URL dla kategorii innych niż adresy utworzone w witrynie głównej. * * * W witrynie głównej instancja linku do kategorii w głównym menu nawigacyjnym: -- > http://localhost/BHAKTIVEDANTAS-dev/public_html/blog/category/asides/ Zwróć uwagę na katalog '/blog/'. Wybranie linku powoduje powrót do strony z listą postów kategorii. Tak powinno być. Podczas gdy w podwitrynach, korzystających z tego samego głównego menu nawigacyjnego witryny do nawigacji globalnej, link do tej samej kategorii jest skonstruowany inaczej: --> http://localhost/BHAKTIVEDANTAS-dev/public_html/category/asides/ Zwróć uwagę na brak Katalog „/blog/”. Wybranie linku zwraca stronę 404. :( Aby zintegrować 4 podstrony razem ze stroną główną, korzystam z menu nawigacyjnego strony głównej dla wszystkich, wstawiając następujący kod w pliku 'header.php' dla każdej z podstron. Wszystkie pozostałe linki na menu nawigacyjne działa w całym serwisie > <?php /* dla głównego menu serwisu do wyświetlania globalnie lub w całym serwisie */ > switch_to_blog(1); ?> <?php /* Nasze menu nawigacyjne Jeśli nie jest wypełnione >, wp_nav_menu wraca do wp_page_menu.Używane jest menu przypisane do głównej pozycji >. Jeśli nie jest przypisane żadne, używane jest menu o najniższym ID >. */ ?> > > <?php wp_nav_menu( array( 'container_class' => 'menu-header', > 'theme_location' => 'primary' ); ?> <?php /* przywracanie ustawień dla bieżącego > bloga */ restore_current_blog(); Link „Kategorie” został dodany do menu? W panelu Superadministrator > Wygląd > Menu utworzyłem niestandardowy link, wpisałem „#” w polu adresu URL i „Kategorie” dla etykiety, a następnie dodałem do menu. Ne xt Dodałem różne kategorie jako dzieci niestandardowego linku.


title: Usunięcie tagów postów usuwa kategorie

text: Próbuję usunąć stare tagi postów z kilku instalacji WP. W niektórych przypadkach mam ponad 20 tys. tagów na kilka tysięcy postów. Próbowałem następującego kodu: usuń t.*,tt.*,tr.* FROM wp_terms AS t INNER JOIN wp_term_taxonomy as tt INNER JOIN wp_term_relationships as tr GDZIE tt.term_id = t.term_id AND tr.term_taxonomy_tax = tt.termid_termid AND tt.taxonomy = 'post_tag' AND tt.count < 5 Ma to na celu usunięcie wszystkich tagów, które są używane w mniej niż 5 postach. Po uruchomieniu zauważyłem, że wiele kategorii zostało również usuniętych (taksonomia = „kategoria”) i nie mogę się doczekać, dlaczego? Czy komuś jeszcze udało się to zrobić??


title: Każdy post jest wyświetlany dwukrotnie w moim niestandardowym zapytaniu...?

text:
Utworzyłem niestandardowe zapytanie, które wyciąga wszystkie posty z niestandardowego typu postu, uporządkowane według liczby komentarzy. To jest twoje niestandardowe zapytanie: <?php $querystr = " SELECT wposts.* FROM $wpdb->posts wposts, $wpdb->postmeta wpostmeta WHERE wposts.ID = wpostmeta.post_id AND wposts.post_status = 'publish' AND wposts.post_type = 'Samouczki' ORDER BY wposts.comment_count DESC "; $tutorialposts = $wpdb->get_results($querystr, OBJECT); ?> <?php if ($tutorialposts): ?> <?php global $post; ?> <?php $i = 0; ?> <?php foreach ($tutorialposts jako $post): ?> <?php $i++; ?> <?php setup_postdata($post); ?>
<?php echo $i ?>: <a href="<?php the_permalink() ?>" rel="zakładka" title="Stały link do <?php the_title(); ?>"> <?php tytuł_(); ?>
 <?php endforeach; ?> <?php endif; ?> Ma dodany mały kod do numerowania postów. Ale wyjąłem ten kod i ten sam problem utrzymywał się. Właściwie robi to, co ma robić! W rzeczywistości jest tak podekscytowany robieniem tego, co powinien, że robi to dwa razy. ![Zrzut ekranu przedstawiający problem](http://i.stack.imgur.com/pEQLu.jpg) Również, jeśli ktoś mógłby mi powiedzieć, jak przeanalizować ten kod, aby wyświetlał tylko 10 najlepszych postów pobranych przez zapytanie, które byłyby doskonały. Ale prawdopodobnie mógłbym to rozgryźć sam, po prostu jestem trochę leniwy. Naprawdę muszę tylko wiedzieć, dlaczego wyciąga każdy post i wyświetla go dwa razy o.0


title: jak przeciągnąć komentarze do postów wordpress na zewnętrzną stronę

text:
Witam Chciałbym się dowiedzieć, czy istnieje sposób na przeciągnięcie treści komentarzy pod postem na osobną stronę z wordpress. obecnie to jest to, co mam, chciałbym zastąpić funkcją ściągania komentarzy zamiast ciągnąć link do komentarzy. <?php // Dołącz Wordpress define('WP_USE_THEMES', false); wymagaj('./blog/wp-load.php'); ?>

Ostatnio zadawane pytania
 <?php query_posts('showposts=3'); ?> <?php while (have_posts()): the_post(); ?>
 <a href="<?php the_permalink() ?>"><?php the_title() ?>
 <?php the_time('F jS, Y') ?> <?php the_fragment(); ?> <?php comments_popup_link(); ?> Aby zobaczyć odpowiedź na pytanie, kliknij <a href="<?php the_permalink() ?>">tutaj.

 <?php endwhile; ?>
 Każda pomoc jest doceniana, dziękuję.


title: Wyodrębnij pierwszy adres URL oembed wstawiony do treści posta

text: Chcę wyodrębnić pierwszy adres URL oEmbed wstawiony do treści posta, aby umieścić metatag z nagłówka lub w innym miejscu, aby nadać mu inny styl niż reszta treści.


title: Ogranicz innym administratorom możliwość korzystania z Edytora w panelu administracyjnym

text: Prowadzę stronę internetową WordPress. Chcę przypisać innym użytkownikom role, takie jak Administrator, Edytor itp. Chcę, aby mogli instalować wtyczki, motywy, usuwać je itp. Jedyne, czego nie chcę, to dostęp do strony „Edytor”. Nie chcę, aby bezpośrednio edytowali jakiekolwiek podstawowe pliki, nawet jeśli jest to tak małe zadanie, jak dodanie stylu CSS. Jeśli chcą coś dodać, będą musieli przesłać te zmiany do mnie, a ja prześlę je przez FTP. Jak więc mogę całkowicie uniemożliwić innym administratorom, redaktorom itp. dostęp do „Edytora”, jednocześnie ograniczając dostęp do niego? Jeśli ograniczenie dostępu spowoduje globalną blokadę i zablokuje mnie, jeśli spróbuję je ograniczyć, chętnie skorzystam z tej opcji, jeśli ta pierwsza nie jest możliwa. Czy mogę to osiągnąć bez użycia wtyczki? Jeśli nie, czy jest jakaś wtyczka, która zrobi to za mnie? Mam dostęp do podstawowych plików WordPressa, FTP itp. Mogę dokonać wszelkich niezbędnych modyfikacji. Tak więc rozwiązanie w tym zakresie jest bardzo cenione.


title: Wyrejestrować domyślny css wp-admin tylko na ekranie logowania?

text: Mam pytanie dotyczące wyrejestrowania stylów „wp-admin” specjalnie na ekranie logowania. Jeśli po prostu uruchomię globalnie: <?php wp_deregister_style( 'wp-admin' ); ?> mój ekran logowania nie będzie miał żadnych stylów. Jeśli uruchomię funkcję taką jak: function remove_default_styles() { wp_deregister_style( 'wp-admin' ); } add_action( 'admin_enqueue_scripts', 'remove_default_styles' ); spowoduje to pomyślne usunięcie stylów w obszarze administracyjnym, ale nie na stronie logowania. Jeśli jednak uruchomię tę samą funkcję z akcją logowania, na przykład: add_action( 'login_enqueue_scripts', 'remove_default_styles' ); nie ma żadnego efektu. Czy ktoś wie, jak wyrejestrować domyślne style tylko na ekranie logowania? Dziękuję


title: Jak pobrać terminy powiązane z niestandardowym typem posta?

text: Załóżmy, że mam niestandardowy typ posta (np. „produkt”) i niestandardową taksonomię (np. „prod_cat”). To, co muszę zrobić, to skojarzyć wszystkie moje niestandardowe terminy taksonomii z obiektem mojego niestandardowego typu postu. Oto jak to robię w pętli. $terms = wp_get_object_terms(get_the_ID(),'prod_cat', array('fields'=>'slugs')); Ale to nie działa. Zwraca pustą tablicę.


title: Dodawanie linków do stron do treści, które automatycznie konwertują się na ładne linki bezpośrednie?

text: Czy możliwe jest wstawianie linków w edytorze wysiwyg Wordpress, który po włączeniu przekształci się w ładne permalinki? tj. linki byłyby takie bez ładnych permalinków: /?p=13 Ale przy włączonych permalinkach wyglądałoby to tak: /mypagename/ Myślę, że musiałbym użyć shortcode, aby to zrobić, prawda? Coś, co używałoby identyfikatora i wp_list_pages() przynajmniej dla stron… po prostu zastanawiając się nad sposobem, aby linki w treści działały, gdy permalinki są włączone i wyłączone. Dzięki


title: Jak automatycznie dodać klasę do każdego elementu menu w menu nawigacyjnym?

text: W tej chwili dodaję przycisk wokół kotwic menu za pomocą tego znacznika: $defaults = array( 'theme_location' => '', 'menu' => 'main-nav', 'container' => 'ul' , 'container_class' => 'nav navbar-nav', 'before' => '<button class="btn btn-warning">', 'after' => '</button>', 'menu_class' => ' ', 'menu_id' => 'menu', 'echo' => true, 'fallback_cb' => 'wp_page_menu', 'link_before' => '', 'link_after' => '', 'items_wrap' => '< div class="col-md-6 col-md-offset-3">%3$s</div>', 'depth' => 0, 'walker' => '' ); wp_nav_menu ( $ domyślne ); Jak automatycznie dodać klasy `btn btn-warning` do łączy menu? Oto przykład mojej strony


title: dlaczego moje menu nie pojawia się w panelu administracyjnym

text:
Jestem nowy w wordpressie, więc możesz z wyjątkiem szalonego kodowania poniżej. To, czego chcę, to dać jedną opcję w panelu administracyjnym wordpress mojemu klientowi pod Pages->MergeImage. kiedy klient kliknie opcję MergeImage pojawiającą się pod widżetem stron, chcę wyświetlić mu mój niestandardowy formularz. Aby osiągnąć wszystkie powyższe, postępowałem zgodnie z kodeksem i ostatecznie stworzyłem wtyczkę. poniżej znajduje się kod mojej wtyczki. add_action('admin_menu', 'moje_menu_wtyczek'); function my_plugin_menu() { add_options_page('Moje opcje wtyczek', 'Moja wtyczka', 'zarządzaj_opcjami', 'mój-unikalny-identyfikator', 'moje_opcje_wtyczek'); } function my_plugin_options() { if (!current_user_can('manage_options')) { wp_die( __('Nie masz wystarczających uprawnień, aby uzyskać dostęp do tej strony.') ); } echo '
'; echo '
Oto gdzie formularz poszedłby, gdybym rzeczywiście miał opcje.
'; echo '
'; } Nie ma nic więcej w tym pojedynczym pliku index.php w folderze ImageMerger. Kiedy aktywuję wtyczkę, nie otrzymuję żadnych błędów, ale także nie widzę żadnego menu. Poniższy kod to skopiuj wklej z kodeksu. Więc nie powinno być nic złego w kodzie, myślę, że musi być coś, aby dodać do niego więcej, czego mi brakuje, a nie znalazłem żadnego dobrego samouczka na temat wordpress, aby osiągnąć to zadanie. Proszę powiedzieć, co jeszcze jest wymagane?


title: sortuj posty według alfabetycznej sugestii wtyczek

text: Szukam wtyczki do sortowania postów według kolejności alfabetycznej. Sortuj: A-Z Z-A Najnowszy Najstarszy i możliwość przeglądania po stronie jak w serwisach giełdowych Na stronie: 20 40 60 Wszystko, jeśli nie istnieje, czy mogę to zrobić w **zapytanie post** (Jak ?) Proszę zasugerować mi ! Dziękuję


title: Rozszerz wtyczkę klasy

text: Nie mogę pobrać zmiennej użytkownika z klasy głównej ładującej przykład "klasy podrzędnej": //PLUGIN FILE class father{ var $user; function __construct() { add_action('plugins_loaded', array(&$this, 'loaded')); } funkcja plugins_loaded(){ globalna $wp_get_current_user; $this->user = wp_get_current_user(); } } $plugin = nowy rodzic(); To był plik wtyczki. //EXTEND CLASS class child extends father{ function __construct(){ parent::__construct(); } function user_id(){ echo $this->user->ID; } } To była klasa extend. //PLIK KONFIGURACJI (WYŚWIETLANY W PANELU ADMINISTRATORA) $child = new child(); $user_id = $child->user->id; $dziecko->identyfikator_użytkownika(); I to była strona konfiguracyjna. Nie mogę uzyskać identyfikatora użytkownika w klasie rozszerzonej, ale tak w klasie ojca. Dlaczego i jak mogę to rozwiązać?


title: Javascript nie działa w admin

text: Wygląda na to, że żaden javascript nie działa, gdy loguję się do sekcji administratora mojej witryny. Nie mogę zrobić niczego, co wymaga JavaScript lub AJAX: miniatury Nextgen, organizacja widżetów, nawet menu administratora nie działa. JavaScript w przedniej części witryny działa tak, jak powinien. Szukałem skryptów w firebugu i znalazłem to (oczywiście załadowane w stopce): <script src="http://kainielsen.web44.net/wp-admin/load-scripts.php?c=1&load=jquery-ui -core,jquery-ui-widget,jquery-ui-mouse,jquery-ui-sortable,hoverIntent,wspólne,jquery-color,wp-ajax-respons,wp-lists,jquery-ui-resizable,quicktags,jquery-query ,admin-comments,postbox,dashboard,thickbox,plugin-install,media-upload&ver=e0f647a6df61adcc7200ce17a647db7f" type="text/javascript"> W pewien sposób wydaje się, że wordpress próbuje załadować wszystkie skrypty jednocześnie. Czy to może być przyczyną awarii? Czy to normalne zachowanie Wordpressa? A może doszło do tego, ponieważ używałem W 3 Total Cache? Ostateczne pytanie brzmi: jeśli przyczyną jest ładowanie wszystkiego na raz, jak to cofnąć?


title: Adsense: odrzuciłeś żądania reklam, co spowoduje utratę przychodów

text: Otrzymałem alert na moim koncie AdSense, który mówi > Odrzuciłeś żądania reklam, co spowoduje utratę przychodów. Następujące jednostki reklamowe > wysłały żądania reklamy z nieprawidłowymi informacjami o witrynie. > Dzieje się tak, gdy adres URL serwera, z którego jednostka reklamowa została > wyświetlona, różni się od adresu URL rzeczywistej strony, na której będzie > wyświetlana reklama. Dowiedz się, jak naprawić te błędy. Więc rozwiązaniem jest to, że będę musiał użyć "google_page_url = "http://myurl.com/fullpath";" Używam wordpress, jaki powinien być adres URL dla google_page_url? Na przykład moja strona internetowa to www.technostall.com. Czy powinienem tam umieścić www.technostall.com, czy powinienem podać ścieżkę do każdego posta? To nie jest dobre, ponieważ używam widżetu paska bocznego dla jednostki reklamowej paska bocznego. Nie mogę zmienić adresu google_page_url dla każdej strony. Co powinienem zrobić? Ten błąd pojawia się tylko w moich jednostkach reklamowych na pasku bocznym/w nawigacji. Używa google_page_url = document.location; Cienki?


title: Jak WP decyduje się pokazywać lub nie wyświetlać w panelu administracyjnym wyskakującego okienka z podpowiedzią? Potrzebujesz poprawki

text: Wszystkim nowicjuszom WP3.5 pokazuje pływającą wskazówkę o nowych możliwościach wersji 3.5 umieszczoną w lewym górnym rogu ekranu, mówiącą: **Połączyliśmy pasek administratora i stary nagłówek Dashboard w jeden trwały pasek narzędzi. Najedź kursorem na elementy paska narzędzi, aby zobaczyć, co nowego. {close}** po zamknięciu podpowiedź zniknęła na dobre. I to był mój przypadek. ale po użyciu wtyczki Search&Replace w mojej bazie mysql ponownie otrzymałem ten baner, i tym razem nie jest on klikalny i nadal jest dołączony do lewego górnego rogu, chyba że zmienię ekran na inną aktywność wordpress, tj. wygląd lub coś innego niż początkowy pulpit nawigacyjny. Zastanawiam się, gdzie szukać poprawki w bazie danych? Dołączyłem do zrzutu ekranu tego banera (ru_RU) ![WP3.5 nieusuwalna wskazówka](http://u.askdev.ru/50e/f00b/e4df3b/medium.gif)


title: Zapytanie o ostatnie zaktualizowane posty (posty zaktualizowane w ciągu ostatnich 24 godzin)

text: Mam trudności ze znalezieniem przykładu tworzenia pętli z postami, które zostały zaktualizowane w ciągu ostatnich 24 godzin. Moim pomysłem jest posiadanie strony postów lub może na index.php listy postów, które zostały zaktualizowane w ciągu ostatniego dnia (24 godziny od momentu wykonania zapytania) Czy to możliwe? Czy istnieje sposób na wykonanie tego zapytania? Z góry dziękuję


title: Dokonać podziału w post_query?

text: Jestem nowy w PHP i WP, więc zmagam się z jedną rzeczą: chcę pobrać cały mój post, a następnie uporządkować go zgodnie z moją meta-wartością "_mycounter" podzieloną z datą w sekundach od 1970 lub cokolwiek to było. Wiem, że `'orderby' => 'meta_value_num / date'` to nieprawda, ale jak mam to rozwiązać? Czy mimo to można dodać obliczenia dzielenia/mnożenia w sposób, o który proszę? $query = array( 'orderby' => 'meta_value_num / data', 'meta_key' => '_mycounter', 'order' => 'DESC' ); zapytanie_posty($zapytanie);


title: Wyświetlaj wartość pola niestandardowego na stronie produktu woocommerce

text: Wiem, że podobne pytania były zadawane dziesiątki razy, ale po prostu nie rozumiem, jak wyświetlać niestandardowe pola. Używam woocommerce i chcę wyświetlać wartość pola niestandardowego na stronach produktów. Dodaję niestandardowe pole "current_promotions" i wartość do produktu i próbowałem dodać to do szablonu content-product.php, ale nigdzie nie osiągnę: <?php $postid = get_the_ID(); ?> <?php get_post_meta($post_id, $klucz, $single); ?>


title: Posty CPT wymienione według kategorii z niestandardowym adresem URL przepisywania, proszę o pomoc!

text: Oto, co próbuję zrobić: mam łącznie 10 przepisów na desery (w kategorii wspólnych deserów), które są podzielone według 2 niestandardowych typów postów. Chcę utworzyć 3 różne widoki tych postów z niestandardową strukturą adresu URL opisaną poniżej: 1. Przepisy 1-3 (CPT „a”) z adresem URL: „home/%posttype%/%category%/” 2. Przepisy 4- 10 (CPT „b”) z adresem URL: „home/%posttype%/%category%/” 3. Przepisy 1-10 (wszystkie CPT) z adresem URL: „home/%category%/” Szukałem daleko i szeroko odpowiedź, która uzupełnia zarówno adres URL, jak i treść mojego celu, ale wszystko, co wypróbowałem, dotyczy tylko jednego lub drugiego. Na przykład: W przypadku treści użyłem parametrów `get_posts()`, aby wyświetlić określoną kategorię i typ posta, ale ponieważ szablon jest przypisany do „strony”, URL wygenerowany przez Wordpress nie zawiera niestandardowego typu posta i wyniku to: home/%pagename%/ W przypadku adresu URL próbowałem użyć akcji init do zmodyfikowania reguł przepisywania zgodnie z sugestią na tym forum i chociaż tworzy to strukturę adresu URL dokładnie tak, jak chcę, zawartość wyjściowa dla adresu URL nie odpowiada oczekiwaniom. W rezultacie wszystkie trzy adresy URL zawierają wszystkie 10 przepisów (zasadniczo strona archiwum kategorii ogólnych): „home/%posttype%/%category%/” jest tym samym, co „home/%category%/” i nie mogę zrozumieć dlaczego. Dodałem również filtr do `pre_get_posts`, aby uwzględnić moje CPT w głównym zapytaniu, tak aby w ogóle się wyświetlały. Nie jestem pewien, czy istnieje lepszy sposób na zrobienie tego na wypadek, gdyby zakłócał przepisywanie adresu URL, chociaż biorąc pod uwagę, że wziąłem kod z kodeksu WP w sekcji „Niestandardowe typy postów w głównym zapytaniu”, myślę, że problem / rozwiązanie jest gdzieś Chyba nie szukam. Nie wyobrażam sobie, żeby to, czego chcę, było aż tak skomplikowane. Czy ktoś może zobaczyć, czego mi brakuje? Dziękuję!!


title: get_posts() nie działa w functions.php

text: Jeśli użyję następującej funkcji w dowolnym szablonie motywu, działa zgodnie z oczekiwaniami. Jednak podczas próby użycia go w funkcji AJAX w moim functions.php, zwraca pusty. $args = array ( 'numberposts' => 10, 'post_type' => array('topic','reply'), 'autor' => 454 ); $user_posts = get_posts($args); Jakieś pomysły? Oto pełna funkcja: function he_delete_user(){ $args = array ( 'numberposts' => 10, 'post_type' => array('topic','reply'), 'autor' => 454 ); $user_posts = get_posts($args); if (empty($user_posts)){ $response_array['status'] = 'false'; echo json_encode($tablica_odpowiedzi); } else{ // usuń wszystkie posty użytkowników foreach ($user_posts jako $user_post) { wp_delete_post($user_post->ID, true); } $response_array['status'] = 'sukces'; echo json_encode($tablica_odpowiedzi); } } add_action('wp_ajax_he_delete_user','he_delete_user');


title: Ograniczyć użytkownika, aby miał dostęp tylko do określonych stron?

text: Mam kilku użytkowników, których chciałbym umieścić w grupach użytkowników. Powodem tego jest to, że każda grupa użytkowników będzie miała dostęp do określonego zestawu stron lub określonego niestandardowego typu postu. Chciałbym móc ograniczyć każdą z grup użytkowników, aby mieć dostęp (zarówno na podstawie uprawnień, jak i widoczności) tylko do określonych stron i typów postów, które wybiorę. Chciałbym mieć sekcję pól wyboru na każdej ze stron/postów, na których wymieniono każdą grupę/rolę użytkowników. Jeśli grupa użytkowników nie jest zaznaczona, nie będą mogli zobaczyć ani edytować niczego innego w administratorze. Te zmiany dotyczą tylko administratora. Chcę, żeby wszyscy mieli dostęp do frontendu. Oto kod, który mam do tej pory. Tworzę dwie różne role i przypisuję im tylko określone możliwości. Intencją tutaj jest, aby każda z ról mogła tylko widzieć/edytować strony, do których ma bezpośredni dostęp. Innymi słowy, chciałbym, aby administrator był dla nich całkowicie pusty, z wyjątkiem stron, które mogą edytować. Nie chcę nawet, aby widzieli inne strony w adminie. Poniższy kod dodaje role i poprawnie przypisuje każdemu z nich możliwości, ale obaj mogą zobaczyć wszystkie strony i żadna z nich nie może edytować żadnej ze stron. Mam niestandardową meta powiązaną ze stronami, które powinny być w stanie edytować (tj. „allow_access”), a meta zwraca tablicę identyfikatorów użytkowników, którzy mogą edytować stronę. Meta działa poprawnie i poprawnie zwraca tablicę, ale użytkownicy nadal nie mogą edytować strony. add_action('init', 'taylors_add_roles'); function taylors_add_roles() { if(!$GLOBALS['wp_roles']->life_stages_children) { add_role( 'life_stages_children', __( 'Etapy życia - dzieci' ), array( 'read' => true, 'edit_posts' => fałsz, 'delete_posts' => fałsz, ) ); } if(!$GLOBALS['wp_roles']->life_stages_students) { add_role( 'life_stages_students', __( 'Etapy życia - studenci' ), array( 'read' => true, 'edit_posts' => false, 'delete_posts ' => fałsz, ) ); } } add_action('init', 'taylors_add_cap'); function taylors_add_cap() { $custom_cap['life_stages_children'][] = 'edit_life_stages_children_pages'; $custom_cap['life_stages_children'][] = 'delete_life_stages_children_pages'; $custom_cap['life_stages_children'][] = 'delete_others_life_stages_children_pages'; $custom_cap['life_stages_children'][] = 'read_life_stages_children_pages'; $custom_cap['life_stages_children'][] = 'read_private_life_stages_children_pages'; $custom_cap['life_stages_children'][] = 'edit_others_life_stages_children_pages'; $custom_cap['life_stages_students'][] = 'edit_life_stages_students_pages'; $custom_cap['life_stages_students'][] = 'delete_life_stages_students_pages'; $custom_cap['life_stages_students'][] = 'delete_others_life_stages_students_pages'; $custom_cap['life_stages_students'][] = 'read_life_stages_students_pages'; $custom_cap['life_stages_students'][] = 'read_private_life_stages_students_pages'; $custom_cap['life_stages_students'][] = 'edit_others_life_stages_students_pages'; foreach ($custom_cap as $role => $caps){ foreach ($caps as $cap){ if(!$GLOBALS['wp_roles']->role_objects[$role]->has_cap($cap)) { $GLOBALS ['wp_roles'] -> role_objects [$ rola] -> add_cap ($ cap); } } } } add_filter( 'map_meta_cap', 'taylors_map_meta_cap', 10, 4 ); function taylors_map_meta_cap( $caps, $cap, $user_id, $args ) { /* Jeśli edytujesz, usuwasz lub czytasz stronę, pobierz obiekt typu post i post. */ if ( 'edit_pages' == $cap || 'delete_pages' == $cap || 'read_pages' == $cap ) { $post = get_post( $args[0] ); $post_access = get_post_meta($post->ID, 'allow_access', true); //tablica zawierająca użytkowników, którzy mają dostęp do tego wpisu. $post_type = get_post_type_object( $post->post_type ); /* Ustawia pustą tablicę dla wersalików. */ $caps = array(); } /* Jeśli edytujesz stronę, przypisz wymaganą właściwość. */ if ( 'edit_pages' == $cap && $post->post_type == 'strona' && in_array(get_current_user_id(), $post_access) ) { if ( $user_id == $post->post_author ) $caps[] = $post_type->cap->edit_life_stages_children_pages; else $caps[] = $post_type->cap->edit_others_life_stages_children_pages; } /* W przypadku usuwania strony przypisz wymaganą właściwość. */ elseif ( 'delete_pages' == $cap && $post->post_type == 'strona' && in_array(get_current_user_id(), $post_access) ) { if ( $user_id == $post->post_author ) $caps[] = $post_type->cap->delete_life_stages_children_pages; else $caps[] = $post_type->cap->delete_others_life_stages_children_pages; } /* Jeśli czytasz prywatną stronę, przypisz wymaganą właściwość. */ elseif ( 'read' == $cap && $post->post_type == 'strona' && in_array(get_current_user_id(), $post_access) ) { if ( 'private' != $post->post_status ) $caps[ ] = 'przeczytaj'; elseif ( $user_id == $post->post_author ) $caps[] = 'czytaj'; w przeciwnym razie $caps[] = $post_type->cap->read_private_life_stages_children_pages; } /* Zwróć możliwości wymagane przez użytkownika. */ return $caps; }


title: Niestandardowa strona taksonomii zwraca 404

text: Stworzyłem niestandardowy typ posta i niestandardową taksonomię. Mogę tworzyć nowe posty i przypisywać te taksonomie, ale zwraca 404, gdy wchodzę na mydomain.com/mycustomtaxonomy/termslug Oto mój kod: $labels = array( 'name' => _x('Videos', 'post type nazwa ogólna'), 'singular_name' => _x('Video', 'typ posta osobliwa nazwa'), 'add_new' => _x('Nuevo', 'pozycja portfolio'), 'add_new_item' => __('Nuevo video'), 'edit_item' => __('Edytuj wideo'), 'new_item' => __('Nuevo video'), 'view_item' => __('Ver videos'), 'search_items' => __( 'Buscar videos'), '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, 'rewrite' => true, 'capability_type ' => 'post', 'rewrite' => array("slug" => "wideo"), 'hierarchical' => true, 'menu_position' => 5, 'supports' => array('title', ' edytor”, „miniaturka”, „atrybuty strony”) ); register_post_type( 'wideo' , $args ); flush_rewrite_rules(); // Zarejestruj niestandardową taksonomię register_taxonomy("familia_videos", array("videos"), array("hierarchical" => true, "label" => "Kategorie filmów", "singular_label" => "Kategorie filmów", ' przepisz' => prawda )); A moja struktura permalinków: /%postname%/ Utworzyłem: taxonomy-familia_videos.php Odświeżyłem strukturę permalinków, ale zawsze otrzymuję błąd 404. Jakaś pomoc? Dziękuję


title: Pomoc Tabs z: callback add_help_tab() - Jak działa argument?

text: Próbowałem tylko dodać prostą zakładkę pomocy, z poziomu klasy (przykład do przetestowania poniżej). Chciałem użyć helpera/callback fn do przygotowania treści dla różnych zakładek pomocy. Zgodnie z rdzeniem, funkcja przyjmuje kilka argumentów: > WP 3.3 /wp-admin/includes/screen.php LINE 722 // Jeśli istnieje, wywołanie zwrotne karty odpal. if ( ! empty( $tab['callback'] ) ) call_user_func_array( $tab['callback'], array( $this, $tab ) ); Z jakiegoś powodu otrzymuję kompletny obiekt `WP_Screen` w wywołaniu zwrotnym, a nie tylko kartę. Zobacz PasteBin tutaj. Oto przykład. Dla Twojej wygody jako wtyczka, dzięki czemu testowanie jest łatwiejsze (na ekranach postów). <?php /**  * Nazwa wtyczki: Przypadek testowy karty pomocy  * Identyfikator URI wtyczki:  http://unserkaiser.com  * Opis: Dodaj przypadek testowy karty pomocy */ class example_help { public $tabs = array( 'EXAMPLE' => array ( 'title' => 'TESTUJ MNIE!' ,'content' => 'FOO' ) ); statyczna funkcja publiczna init() { $klasa = __KLASA__ ; nowa klasa $; } public function __construct() { add_action( "load-{$GLOBALS['pagenow']}", array( $this, 'add_tabs' ), 20 ); } public function add_tabs() { foreach ( $this->tabs as $id => $data ) { get_current_screen()->add_help_tab( array( 'id' => $id ,'title' => __( $data[ 'title'], 'some_textdomain' ,'content' => $data['content'] ,'callback' => array( $this, 'przygotuj' ) ) ); } } /* HELPER */ public function Prepare( $tab ) { raportowanie_błędów( E_ALL ); // NIEPOWODZENIE: zwróć puste // _dump( $tab['tabs'] ); // Brak komunikatów o błędach na ekranie var_dump( $tab ); // Mogę to zrzucić używając własnej funkcji, // która dodaje dane do globalnego, a następnie wywołuje je i drukuje przy wyłączaniu // Zobacz zawartość pastebin // _dump( $tab ); return printf( '<p>%s</p>' ,__( 'test', 'dmb_textdomain' ) ); } } add_action( 'load-post.php', array( 'example_help', 'init' ) ); add_action( 'load-post-new.php', array( 'example_help', 'init' ) ); ### Edycja: Jeśli w wywołaniu zwrotnym wypiszę `print $tab`, otrzymam `Array` jako łańcuch wyjściowy _nad_ rzeczywistą zawartością (`WP_Screen` jest obiektem). Próbowałem zrzucić wszystkie części tablicy bez żadnego rezultatu (biały ekran, brak błędu).


title: Dołącz arkusz stylów wydruku

text: Jak prawidłowo połączyć arkusz stylów drukowania? Wszystkie moje style zostały umieszczone w kolejce poprzez plik funkcji. Kodeks sugerował umieszczenie linku w nagłówku, ale to nie zadziałało, czy istnieje arkusz stylów drukowania rdzenia? Próbowałem utworzyć link w nagłówku, ale widzę któryś z tych stylów? Widzę plik print.css w nagłówku, kiedy patrzę na źródło. /css/print.css" type="tekst/css" media="drukuj" />


title: Jak dodać szablon do motywu w WP

text: Jestem _bardzo_ nowy w WP i próbuję ustawić nową stronę, która wyświetla tylko określoną kategorię za pośrednictwem sekcji administratora WP. Ściągnąłem wtyczkę ACE i udało mi się odfiltrować posty z określoną kategorią ze strony głównej. Teraz chcę utworzyć osobną stronę, która wyświetla tylko tę kategorię, ale nie mogę wymyślić, jak dodać nowy szablon do motywu za pomocą edytora online, aby wyświetlić te posty. Używam motywu Clean Home. Czy ktoś może mi pomóc dowiedzieć się, jak to zrobić? czy muszę połączyć się z serwerem, aby utworzyć plik, czy jest jakiś sposób na zrobienie tego za pomocą konsoli administratora?


title: Złośliwe oprogramowanie na stronie

text: Cześć, gdy próbuję wejść na moją witrynę, zostaje mi przekierowany do innej witryny. Wygląda na to, że plik htaccess został zmieniony. Kiedy skanuję witrynę za pomocą Sucuri, pojawia się ten błąd Znane złośliwe oprogramowanie javascript. Szczegóły: http://sucuri.net/malware/malware-entry-mwhta7 Lokalizacja: http://ca-no.ru/example/status.php Jak mogę to naprawić na stałe? Miałem już ten problem w zeszłym tygodniu i zresetowałem plik htaccess, jednak powtórzył się.


title: Nowo utworzona kategoria nie pokazuje kategorii

text: Tworzę nowe posty w WordPressie, gdy próbuję dodać nową kategorię i klikam Dodaj kategorię, nie pokazuje utworzonej kategorii, więc domyślna kategoria użyta jako kategoria Jego utwórz, utwórz kategorię, ale nie wyświetla się na liście kategorii na stronie nowego posta. Nie wiem w czym problem.


title: Jak mam do tego podejść?(na sprzedaż, do wynajęcia, sprzedane->przenieś coś z kategorii do innej)

text: Przede wszystkim bardzo przepraszam za tytuł tego pytania. Obecnie pracuję nad tematem wordpress dla nieruchomości, który będzie zawierał reklamy z miasta, w którym mieszkam. Zasadniczo chcę mieć 3 kategorie: na sprzedaż, do wynajęcia i sprzedane oraz aby móc się przenieść, powiedzmy post ( dodanie domu) z jednej kategorii do innej kategorii. Każda kategoria powinna mieć stronę, na której każdy dom, który jest obecnie w tej kategorii, jest pokazany jako fragment (tak jak strona indeksu bloga). Chodzi o to, że nie wiem, jak do tego podejść? (Jestem początkującym programistą). Czy powinienem przechowywać autoreklamy na stronach lub w postach. Czy powinienem mieć specjalne szablony stron? Czy ktoś mógłby mi podać zestaw kroków, które muszę wykonać, aby to osiągnąć? (szukam prostych porad w języku angielskim, a nie kodu). Dziękuję!


title: Porządek sortowania rosnąco dla widoku miesięcznego i kategorii, tj. ?m=201204, ?cat=4

text: Moje posty są uporządkowane rosnąco (od najstarszych do najnowszych), ponieważ używam Wordpressa jako strony internetowej, aby towarzyszyć książce opublikowanej na podstawie oryginalnego bloga. Aby to zrobić, umieściłem następujący kod tuż przed The Loop w index.php mojej niestandardowej wersji motywu Connections: <?php $wp_query->set('orderby', 'post_date'); $wp_query->set('zamówienie', 'ASC'); $wp_query->get_posts(); ?> Działa to dobrze dla głównego indeksu i kiedy posty są wyświetlane według strony, np.: `index.php?paged=1` Jednak, gdy posty są pobierane według miesiąca lub kategorii, domyślna kolejność sortowania to DESC, np.: http://www.justanothersoldier.com/?cat=4 http://www.justanothersoldier.com/?m=200312 Chcę tylko, żeby wszystko zawsze było ASC. Czy muszę edytować szablony miesięczne i kategorii? Dziękuję.


title: Agreguj wiadomości RSS z wielu witryn i ograniczaj określone treści

text: Jak mówi tytuł, mam konfigurację z wieloma witrynami z 18 witrynami i chciałbym połączyć kanały RSS ze wszystkich witryn z kanałem witryny głównej. Inne kanały mogą nadal istnieć, to nie jest problem. Dodatkowo chciałbym, aby administrator (być może w edycji strony/postu) wykluczył niektóre posty z kanałów. Oprócz niestandardowej wtyczki zawierającej wszystkie specjalne widżety i nadpisania podstawowych funkcji, używamy również mocno dostosowanego motywu. Używam tego kodu w moim functions.php do ściągania wszystkich typów treści do RSS: function custom_post_feeds($qv){ if (isset($qv['feed'])) $qv['post_type'] = get_post_types() ; zwróć $qv; } add_filter('żądanie', 'custom_post_feeds'); Jakieś pomysły?


title: tytuł nie jest drukowany w tagu html

text: Zawijam tagi html wokół `the_title();` jak if(has_post_thumbnail()) { the_post_thumbnail('home-thumbs'); echo "".the_title().""; } Ale `the_title` jest drukowane powyżej `<span>`, nie tak jak chcę. czy czegoś mi brakuje? lub robisz coś złego?


title: Załaduj jQuery wewnątrz szablonu strony

text: To jest raczej podstawowe i może jest to zduplikowane pytanie, więc daj mi znać, gdzie dokładnie odpowiada się w takim przypadku. Muszę dodać bardzo prosty skrypt jQuery w moim szablonie strony. Używam motywu Openstrap i widzę, że jQuery jest ładowany na każdej stronie, więc pomyślałem, że mogę normalnie wstawić skrypt, ale nie działa. Po przeczytaniu kilku postów zauważyłem, że muszę użyć funkcji `wp_enqueued_script`, jednak wystarczy załadować skrypt tylko na szablonie strony, a nie na każdej stronie. * * * **edytuj** Udało się! Zmieniłem go na is_singular ($post_type) dla moich potrzeb i działa zgodnie z oczekiwaniami. Jednak skrypt jQuery nic nie robi. Wewnątrz functions.php, /* iframe loadera */ function loader_iframe() { if ( is_singular('farmacia')) { wp_enqueue_script( 'loader-iframe', get_template_directory_uri() . '/js/loader-iframe.js', tablica ( 'jzapytanie' )); } } add_action( 'wp_enqueue_scripts', 'loader_iframe' ); Wewnątrz js/loader-iframe.js, $(function() { $('.loader-iframe').on('load', function(){ $('.loader-iframe').find('img' ).ukryć();         });     });


title: Ładowanie obrazów z JavaScript na interfejsie

text: Otrzymuję błędy 404 na ścieżkach obrazu w tej wtyczce, którą buduję. Próbuję zbudować wtyczkę zawierającą JavaScript i obrazy (takie jak ikona zamykania i pasek postępu), które chcę załadować na interfejsie użytkownika. Znalazłem odpowiednią technikę umieszczania w kolejce jQuery, a następnie właściwą technikę rejestrowania i umieszczania w kolejce mojego skryptu jQuery. Jedynym problemem jest to, że jQuery musi załadować obraz, taki jak ikona zamykania i pasek postępu. Powiedziano mi, że nie mogę polegać na ścieżkach względnych w różnych sytuacjach na blogu, a także umieścić obraz w tym samym katalogu, co skrypt. Nie udało się załadować tych obrazów — otrzymuję błędy 404, ponieważ WordPress podaje błędne ścieżki. Jasne, mogę określić coś takiego... jQuery('#test').css('background','transparent url(wp-content/plugins/myplugin/closer.png) 0 0 no-repeat'); ... ale ścieżka wp-content/plugins/myplugin/closer.png jest pod pewnymi względami niewiarygodna, ponieważ ludzie konfigurują swoje blogi. Jaka jest technika, dzięki której mój frontonowy komponent jQuery ładuje te obrazy bez błędów 404 i bez kodowania ścieżki? Chodzi mi o to, czy WordPress automatycznie wstrzykuje jakąś globalną stałą ścieżki w jQuery, którą mogę pobrać i użyć?


title: Jak zrobić pokaz slajdów 4 najnowsze wiadomości i wiadomości zaczynają się od początku, a nie od czwartego

text:
Jestem trochę nowy w wordpress i chciałem wiedzieć, jak sprawić, by moja witryna wordpress wyświetlała ostatnie 4 wiadomości w tym suwaku i ponownie wszystkie wiadomości poniżej: class s_naujienos extends WP_Widget { function s_naujienos() { $widget_ops = array('classname' = > 's_naujienos', 'description' => 'Naujienų slideris'); $this->WP_Widget('s_naujienos', 'Naujienų slideris', $widget_ops); } function form($instance) { $instance = wp_parse_args((array) $instance, array('title' => '')); $tytuł = $instancja['tytuł']; ?>
<label for="<?php echo $this->get_field_id('title'); ?>">Tytuł: <input class="widefat" id="<?php echo $this->get_field_id ('tytuł'); ?>" name="<?php echo $this->get_field_name('title'); ?>" type="text" value="<?php echo attribute_escape($title); ?> " />
<?php } aktualizacja funkcji($nowa_instancja, $stara_instancja) { $instance = $stara_instancja; $instance['title'] = $new_instance['title']; zwróć $instancję; } widget funkcji($args, $instance) { extract($args, EXTR_SKIP); echo $before_widget; $title = pusty($instancja['title']) ? ' ' : apply_filters('widget_title', $instance['title']); if (!empty($title)) { echo $before_title . $tytuł . $po_tytule; } if (have_posts()) { //$count_posts = wp_count_posts(); //$published_posts = $count_posts->opublikuj; $naujienu_sk = 4; ?> <skrypt> var newsslider = nowy pro3bSlider('#snauj', 500, <?php echo $naujienu_sk; ?>, prawda, 5000, fałsz); </script>  <link rel="stylesheet" href="./css/foundation.css" type="text/css" media="screen"/>
 <img onclick='newsslider.left()' class='snauj_left' src='<?php echo get_template_directory_uri(); ?>/img/nauj_left.png'/> <img onclick='newsslider.right()' class='snauj_right' src='<?php echo get_template_directory_uri(); ?>/img/nauj_right.png'/> <div style='szerokość: <?php echo $naujienu_sk * 500; ?>px; wysokość: 282px;'> <?php $licznik = 0; $argum = array('numberposts' => $naujienu_sk); $ recent_posts = wp_get_recent_posts ($argum); foreach ($recent_posts jako $recent) { the_post(); $licznik++; ?> <div id='snauj<?php echo $licznik; ?>' style='szerokość: 500px; wysokość: 282px; wyświetlacz: inline-block; pozycja: względna; kolor: #fff; pływak: lewy; background: #000;'>
<?php the_title(); ?>
 <a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"> <?php //add_image_size('my_image_media', 600, 338) ; //dodaj_rozmiar_obrazu( 'kategoria-kciuk', 300, 9999 ); //set_post_thumbnail_size (500, 282 ); the_post_thumbnail('duża', array('class' => 'wp-caption')); // Zadeklaruj rozmiar w pikselach, którego potrzebujesz wewnątrz tablicy the_post_thumbnail('newsslider-size'); ?>
 <?php } ?>

<?php } //echo get_bloginfo("template_url"); echo $after_widget; } } add_action('widgets_init', create_function('', 'return register_widget("s_naujienos");'));