title: Korzystanie z metadanych przycisku radiowego z niestandardowego pola meta

text:
Bardzo nowy w próbowaniu PHP i hackuję moją pierwszą wtyczkę za pomocą samouczków. Mam niestandardowe pole meta z przyciskiem opcji Tak / Nie na wszystkich stronach WordPress (w edytorze). **EDYTUJ-** Usunąłem oryginalny kod. Zobacz poniżej. Więc .. moje pytanie brzmi, jak sprawdzić, aby zobaczyć _który_ z dwóch przycisków jest sprawdzany za pomocą instrukcji if()? Planuję dołączyć skrypt do stron WordPressa, które mają zaznaczone „tak”. Po prostu nie jestem pewien, jakiej wartości powinienem szukać i jak to nazwać. **EDYTUJ-** To jest to, czego teraz używam bez powodzenia. Aktualny kod: <?php } /** * Dodaje pole meta do ekranu edycji posta */ function prfx_custom_meta() { add_meta_box( 'prfx_meta', __( 'Meta Plugin', 'prfx-textdomain' ), 'prfx_meta_callback' , 'strona', 'strona', 'wysokie' ); } add_action( 'add_meta_boxes', 'prfx_custom_meta' ); funkcja is_edit_page($new_edit = null){ global $pagenow; //upewnij się, że jesteśmy na backendzie if (!is_admin()) return false; if($new_edit == "edit") return in_array( $pagenow, array( 'post.php', ) ); elseif($new_edit == "new") //sprawdź nową stronę posta return in_array( $pagenow, array( 'post-new.php' ) ); else //sprawdź nowe lub edytuj return in_array( $pagenow, array( 'post.php', 'post-new.php' ) ); } /** * Wyświetla zawartość pola meta */ function prfx_meta_callback( $post ) { wp_nonce_field( basename( __FILE__ ), 'prfx_nonce' ); $prfx_stored_meta = get_post_meta( $post->ID ); ?>
 <?php _e( 'Czy to jest strona z podziękowaniami?', 'prfx-textdomain' )?>
  <input type="radio" name="meta-radio" id="meta-radio-one" value="radio-one" <? php if ( isset ( $prfx_stored_meta['meta-radio'] ) ) sprawdzone($prfx_stored_meta['meta-radio'][0], 'radio-one' ); ?>> <?php _e( 'Tak', 'prfx-textdomain' )?>
  <input type="radio" name="meta -radio" id="meta-radio-dwa" value="radio-dwa" <?php if (is_edit_page('nowe')) echo "zaznaczone"; else if (isset ( $prfx_stored_meta['meta-radio'] ) ) sprawdzone($prfx_stored_meta['meta-radio'][0], 'radio-two' ); w przeciwnym razie echo "sprawdzone"; ?>> <?php _e( 'Nie', 'prfx-textdomain' )?>

 <?php } /** * Zapisuje niestandardowe dane wejściowe meta */ // Oczekuje poprawka z WordPress- https://core.trac.wordpress.org/ticket/16972 function prfx_meta_save( $post_id ) { // Sprawdza stan zapisu $is_autosave = wp_is_post_autosave( $post_id ); $ is_revision = wp_is_post_revision ( $ post_id ); $is_valid_nonce = ( isset( $_POST[ 'prfx_nonce']) && wp_verify_nonce($_POST['prfx_nonce'], basename(__FILE__))) )? 'prawda fałsz'; // Zamyka skrypt w zależności od stanu zapisu if ( $is_autosave || $is_revision || !$is_valid_nonce ) { return; } // Sprawdza dane wejściowe i zapisuje je w razie potrzeby if( isset( $_POST[ 'meta-radio' ] ) ) { update_post_meta( $post_id, 'meta-radio', $_POST[ 'meta-radio' ] ); } } add_action( 'save_post', 'prfx_meta_save' ); echo '
' . print_r($_POST, prawda) . '
'; globalny $post; $post_id = $post->ID; get_post_meta( $post->ID, $_POST['meta-radio'], prawda ); $response_radio = $_POST['meta-radio']; if ($response_radio=="radio-one") { add_action('wp_footer', 'add_this'); function add_this() { echo "Wybrano przycisk Tak..."; } } elseif ($response_radio=="radio-two"){ add_action('wp_footer', 'add_this'); function add_this() { echo "Wybrano przycisk Nie..."; } } else { add_action('wp_footer', 'add_this'); function add_this() { echo "Żadne dane nie są przekazywane..."; } } Wynikiem jest „Żadne dane nie są przesyłane...” podczas przeglądania aktywnej strony (nawet jeśli dane są zapisywane w meta polu). **Edit-** Dodałem: `echo '<pre>' . print_r($_POST, prawda) . '</pre>';` Poniżej: `add_action( 'save_post', 'prfx_meta_save' );` Dane wyjściowe (edytor i opublikowana strona): `Tablica ( )`


title: Pokazywać tylko posty z określonej kategorii?

text:
Jak mogę pokazać tylko przedmioty z określonej kategorii (kategoria 51)? Oto moja pętla poniżej, do której muszę włączyć kod.
 <?php $portfolioloop = new WP_Query( array( 'paged' => get_query_var('paged'), 'post_type' => 'news', 'posts_per_page' => 4 ) ); ?> <?php while ( $portfolioloop->have_posts() ) : $portfolioloop->the_post(); ?> <div class="news-item" onClick="location.href='<?php echo the_permalink(); ?>'">
<a style="color:#F45B11!WAŻNE;" href="<?php echo the_permalink(); ?>"><?php echo the_time('d.m.Y'); ?> / <?php echo the_title(); ?>

 <?php if (get_field('opis') != "") { ?> <?php echo the_field('opis'); ?> <?php } else { $newscontent = get_the_content(); $newscontent_str = strip_tags($newscontent, ''); echo substr($newscontent_str,0,250) . „…”; } ?>

 <?php endwhile; // koniec pętli. ?>
<?php echo wp_count_posts('news')->publikuj; ?> możliwości
 <?php if (function_exists('wp_pagenavi')) { wp_pagenavi( array( 'query' => $portfolioloop) ); } ?>


title: Jak osadzić stronę php z oddzielnej witryny

text: Skonfigurowałem witrynę Wordpress dla klienta, dla którego zawartość została przeniesiona ze statycznej witryny HTML z 2004 roku. Stara witryna posiada link, który prowadzi użytkownika do formularza PHP (również opracowanego w 2004 roku), który jest hostowany na osobnym domena. Ta strona PHP wysyła zapytanie do bazy danych MySQL również hostowanej w oddzielnej domenie. Zostałem zapytany, czy mogę umieścić ten formularz PHP jako część nowej witryny Wordpress, a nie jako link do strony zewnętrznej. Obecnie najprostszą opcją, jaką przychodzi mi do głowy, jest modyfikacja stylu używanego przez formularz PHP, a następnie osadzenie go za pomocą ramki iFrame. Ewentualnie mógłbym spróbować zbudować formularz w Wordpress, który będzie wysyłał zapytania do bazy danych MySQL w oddzielnej domenie, ale wydaje się to być dużo pracy i może mieć wpływ na bezpieczeństwo. Biorąc pod uwagę, że nie mam doświadczenia z Wordpressem, jakie są inne opcje, aby to zrobić?


title: Czy jest jakaś wtyczka, która może wkleić wspólną treść do każdego mojego posta?

text: Na swoim blogu używam wordpressa. Mój blog zawiera szczegóły wydarzeń, a w każdym poście chcę zacząć od „te informacje są dostarczane wyłącznie przez ...” to oświadczenie i zakończyć moim „feedburner subscribe us box” Tak więc to, czego tak naprawdę szukam, to <--- My String---> MY Actual Post <---Mój feedburner zasubskrybuj nas kod---> to. Czy jest jakaś wtyczka, która może automatycznie dodawać popularne rzeczy do mojego postu. Proszę o pomoc.


title: Jak zapisać dane wyjściowe zmiennych php używanych w inline css do głównego style.css?

text: Mam kilka zmiennych PHP, z których każda reprezentuje pewne ustawienia użytkownika ustawione przez interfejs opcji motywu, takie jak: * kolory motywu * typografia * itp. Wszystkie te zmienne znajdują się w pliku o nazwie `dynamic-style.php`: <?php <typ stylu ="text/css"> body { color: <?php echo $text_color; ?>; } </style> ?> Czy istnieje sposób na pobranie przetworzonego kodu CSS z `dynamic-style.php` i zapisanie go w głównym `style.css` na dole pliku? Muszę to zrobić, aby zmniejszyć liczbę żądań HTTP w motywie publicznym. Dziękuję Ci.


title: Jak pisać: $wpdb->aktualizacja mająca parę wartości WHERE NOT w tablicy

text: Muszę zaktualizować wszystkie klucze meta w tabeli postmeta, które mają wartość inną niż 0, do wartości 0. Próbowałem tego .. bez miłości (chociaż nie mogę zrozumieć, dlaczego ....): $status = $wpdb ->query("UPDATE {$wpdb->prefix}postmeta SET meta_value=0 GDZIE meta_key = _wti_like_count AND meta_value <> '0'"); Jestem na tej koncepcji, ale jak powiedzieć "!0" NIE 0 na liście kluczy? $wpdb->update('wp_postmeta', array('_wti_like_count' => '0'), array('_wti_like_count' => '0')); Wielkie dzięki! AKTUALIZACJA: naprawiłem moje `$wpdb->query` w następujący sposób i działa: $status = $wpdb->query("UPDATE {$wpdb->prefix}postmeta SET meta_value='0' WHERE meta_key = '_wti_like_count' AND meta_wartość <> '0'"); Jednak nadal chciałbym wiedzieć, czy istnieje sposób na przekazanie tablicy par kluczy do parametru `WHERE` `$wpdb->update` i zażądać wartości `!=`.


title: tax_query w problemie WP_Query

text: Próbuję utworzyć widżet, który wysyła zapytanie do wielu taksonomii dla mojej wtyczki, ale mam problemy z moim zapytaniem. Moje zapytanie to: $query_args = array( 'numberposts' => $limit, 'order' => 'DESC', 'orderby' => 'post_date', 'post_type' => 'match', 'posts_per_page' => $ limit, ); $query_args['meta_query'] = array( 'klucz' => 'odtworzono', 'wartość' => prawda, ); $query_args['meta_query'] = array( 'relation' => 'LUB', array( 'key' => 'home_club', 'value' => $club, ), array( 'key' => 'away_club' , 'wartość' => $klub, ), ); $query_args['tax_query'] = array( array( 'taxonomy' => 'comp', 'terms' => $comp, 'field' => 'term_id' ), array( 'taxonomy' => 'season', 'terms' => $season, 'field' => 'term_id' ), array( 'taxonomy' => 'team', 'terms' => $team, 'field' => 'term_id' ), array( ' taksonomia' => 'miejsce', 'terms' => $miejsce, 'pole' => 'term_id' ), ); $r = nowe WP_Query( $query_args ); if ( $r->have_posts() ) { while ( $r->have_posts()) { $r->the_post(); ... } } Jestem na 99,9% pewien, że taksonomie są poprawnie zarejestrowane, ponieważ są używane w wielu innych obszarach witryny, w tym podobnym widżecie za pomocą `get_posts`. Powyższe zapytanie nic nie daje, tak jakby nie było dopasowań. Jeśli dodam `'relation' => 'OR',` do `tax_query` wyświetla listę dopasowań, ale bez filtrowania taksonomii, to samo dzieje się, jeśli całkowicie usunę `tax_query`. Generowane jest następujące zapytanie SQL: SELECT SQL_CALC_FOUND_ROWS hoc_posts.ID FROM hoc_posts INNER JOIN hoc_term_relationships WŁ. (hoc_posts.ID = hoc_term_relationships.object_id) INNER JOIN hoc_term_relations AS tt1 WŁ. .ID = tt2.object_id) GDZIE 1=1 AND ( hoc_term_relationships.term_taxonomy_id IN (17) OR tt1.term_taxonomy_id IN (3) OR tt2.term_taxonomy_id IN (4) ) AND hoc_posts.post_type = 'match' AND (hoc_posts.post_status) = 'opublikuj' LUB hoc_posts.post_status = 'prywatny') GROUP BY hoc_posts.ID ORDER BY hoc_posts.post_date DESC LIMIT 0, 6 A wynik `print_r( $query_args );` to: Array ( [numberposts] => 6 [order] => DESC [orderby] => post_date [post_type] => dopasowanie [posts_per_page] => 6 [meta_query] => Array ( [klawisz] => grane [wartość] => 1 ) [tax_query] => Tablica ( [relacja] => LUB [0] => Tablica ( [taksonomia] => comp [terms] => 17 [pole] => term_id ) [1] = > Tablica ( [taxonomy] => sezon [terms] => 3 [field] => term_id ) [2] => Tablica ( [taxonomy] => team [terms] => -1 [field] => term_id ) [ 3] => Array ( [taksonomia] => miejsce [terms] => 4 [field] => term_id ) ) ) Wyrywam włosy, próbując rozwiązać problem. Przeszukałem kilka powiązanych postów na tej stronie i SO, ale wydaje się, że żaden nie rozwiązał mojego konkretnego problemu. Każda pomoc byłaby bardzo mile widziana. :)


title: Nie można wyświetlać niestandardowych rozmiarów miniatur postów jako obrazów tła

text: Próbuję wypracować rozwiązanie dla responsywnych obrazów tła w Wordpress do wykorzystania w witrynach moich klientów. Oto, co otrzymałem: 1) Utworzyłem kilka niestandardowych rozmiarów miniatur: function custom_image_sizes() { add_image_size ( 'small_regular', 832, 800, true ); add_image_size ( 'mała_siatkówka', 1664, 1600, prawda ); add_image_size ( 'duży_regular', 1728, 800, prawda ); add_image_size ( 'duża_siatkówka', 3456, 1600, prawda ); } add_action( 'after_setup_theme', 'custom_image_sizes' ); 2) Teraz próbuję użyć ich w moim szablonie z wbudowanymi zapytaniami o media, takimi jak: $small_regular = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), array(832, 800,)); $big_regular = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), array(1728, 800,) ); echo "<typ stylu='text/css'>"; echo ".entry-featured-image { obraz w tle: url('{$big_regular[0]}'); }"; echo "@media screen and (max-width:48em) { .entry-featured-image { background-image: url('{$small_regular[0]}.'); } }"; echo "</style>"; Chodzi o to, że wbudowane zapytania o media działają, ale zawsze pokazują ten sam rozmiar obrazu (832x800) bez względu na wszystko. Jak to naprawić?


title: Wstaw autorstwo Google do nagłówka WordPress

text: Pracuję nad niestandardową wtyczką, która tworzy kursy i lekcje w WordPressie. Oto strona, na której próbuję pokazać autorstwo Google: → http://myguitarpal.com/videos/?lesson_id=13 Autorstwo Google musi znajdować się na każdej lekcji i powinno być w nagłówku. Na każdej lekcji jest ten sam autor. Myślałem, że będzie to tak proste, jak dodanie tego do pliku `lessons.php`, ale tak nie jest. Nic się nie pojawia, gdy przeglądam źródło. <?php function google_authorship(){ echo '<link rel="author" href="https://plus.google.com/authorname">'; } add_action('wp_head', 'google_authorship'); ?> Zakładam, że dzieje się tak dlatego, że plik `header.php` jest ładowany przed uruchomieniem tego bloku kodu, a hak akcji nie zostaje podpięty. Sprawdziłem nasz motyw i `wp_head()` znajduje się w `header.php`. Myślę, że mógłbym zmodyfikować plik `header.php` i zrobić: <?php is_page('videos'){ echo '<link rel="author" href="https://plus.google.com/authorname"> '; } ?> Ale nie chcę modyfikować motywu, jeśli nie muszę. Musi istnieć sposób na dodanie kodu do nagłówka z poziomu wtyczki. Jest tu? Po wielu poszukiwaniach nie udało mi się znaleźć rozwiązania.


title: Linki bezpośrednie, które zaczynają się od tego samego ciągu, co katalog bloga, nie działają

text: Mam bloga w katalogu o nazwie "prasa". Permalinki są ustawione na post-title i działają w większości przypadków, ale jeśli post/tytuł strony zaczyna się od ciągu znaków katalogu, w tym przypadku "press", post/strona nie zostanie znaleziona. Na przykład strona z linkiem bezpośrednim "/pressclippings" nie znajduje się pod tym linkiem bezpośrednim. Wyłączyłem już wszystkie wtyczki, ale problem pozostaje. O dziwo, jeśli dodam myślnik do linku (nie samego permalinka, ale w pasku adresu przeglądarki), strona zostanie znaleziona, tj. strona z permalinkami "/pressclippings" zostanie znaleziona z "www.mydomain .com/press/-pressclippings”, ale nie z „www.mojadomena.com/press/pressclippings”. Zresetowałem już .htaccess do standardowego wordpress .htaccess, więc problem musi być gdzie indziej. Jakieś pomysły gdzie szukać?


title: Obrazy wstawione za pomocą HTML

text: Zakodowałem kilka obrazów, każdy tag obrazu z nową linią, więc wizualnie będziesz miał rząd obrazów. Kiedy przeglądałem stronę, zamiast pokazywać mi wiersz obrazów, pokazał mi kolumnę obrazów. Wygląda na to, że jeśli mam nową linię dla wszystkich moich obrazów lub wiersz obrazów w Sublime Text 2, a następnie wkleję te informacje do wordpress, zachowa to rząd obrazów (wizualnie). Redaktor(ST2):      Jest to dla mnie mylące, ponieważ zanim zacząłem pracować z WordPressem, pracowałem nad stroną bezpośrednio z Sublime Text 2, a to nie było wynik ed zachowanie dla obrazów. Jedyny sposób, w jaki znalazłyby się na listach obrazków, to użycie znaczników `<li>` w `<ul>` lub umieszczenie `<br>` między obrazami. Czy WordPress obsługuje kod inaczej niż standard?


title: $ wpdb w php 5.5

text: Pomagam znajomemu zaktualizować jego stronę internetową i przenieść ją na nowy serwer. Ich stary serwer działa na php 5.3.6-13, a nowa strona na php 5.5. Istnieje niestandardowa wtyczka, która używa $wpdb, która umożliwia użytkownikowi edycję niektórych informacji zapisanych w niestandardowej tabeli w bazie danych, w szczególności: $query = "UPDATE wp_building_plan SET sale_price = '$sale_price', available = '$available' , broker_name = '$broker_name', broker_email = '$broker_email', broker_phone = '$broker_phone' WHERE id = '$unit_id' "; $wpdb->zapytanie($zapytanie); Oto rzeczywisty kod wtyczki: http://snippi.com/s/dk7bxvx Na serwerze z systemem 5.3 dane mogą być zapisywane do odpowiednich wierszy w tabeli wp_building_plan, gdy informacje są aktualizowane lub zmieniane. Na nowym serwerze działającym w wersji 5.5 po zmianie danych w wtyczce nic się nie zmienia ani nie zapisuje w bazie danych. Próbuję znaleźć lepszy sposób na napisanie kodu UPDATE wp_building_plan, który jest zgodny z PHP 5.5. Sprawdziłem poniższe linki i próbowałem je zaimplementować, ale nie odniosłem żadnego sukcesu: http://www.php.net/ manual/en/function.mysql-db-query.php http://codex.wordpress.org/Class_Reference/wpdb http://make.wordpress.org/core/2012/12/12/php-warning-missing- argument-2-for- wpdb-prepare/ http://markoheijnen.com/the-future-of-wpdb/ Wszelkie wskazówki lub naciski we właściwym kierunku byłyby mile widziane, d


title: Uzyskaj aktualne informacje o terminach podczas zapytań za pomocą wielu terminów taksonomii

text:
Obecnie używam następującego szablonu archiwum, aby utworzyć menu terminów taksonomii i dodać „aktywną” klasę do terminu, który jest obecnie w zapytaniu. $termsA = get_terms('MYTaxA', array( 'parent' => 0, 'hide_empty' => 0)); $currentA = get_term_by( 'slug', get_query_var( 'term' ), 'MYTaxA' ); foreach ($termsA as $term) { $class = $currentA->slug == $term->slug ? 'relacja na żywo' : '' ; echo '
slug .'">' . $term->nazwa . '
'; } Działa to świetnie, z wyjątkiem tego, że mam inne wystąpienie powyższego w innym miejscu na stronie z osobnym menu terminów z innej taksonomii. To podrzędne menu jest widoczne, gdy pierwsze jest aktywne. Struktura linków menu dodatkowego jest skonfigurowana tak, że można wyszukiwać według wielu terminów taksonomicznych, takich jak: _WEBSITE.com/?MyTaxA=term &MyTaxB=term_. $termsB = get_terms('MYTaxB', array( 'parent' => 0, 'hide_empty' => 0)); $currentB = get_term_by( 'slug', get_query_var( 'term' ), 'MYTaxB' ); foreach ($termsB as $term) { $class = $currentB->slug == $term->slug ? 'relacja na żywo' : '' ; echo '
slug .'&MYTaxB='. $term->slug .'">' . $term->nazwa . '
'; } Problem, który mam polega na tym, że druga instancja get_term_by niczego nie zwraca, więc nie jestem w stanie porównać drugiego terminu z zapytaniem do drugiego menu i ostatecznie zastosować klasę „na żywo”, tak jak to możliwe, do pierwszego menu . Btw, nie chcę korzystać z wtyczki QMT.


title: Jak pisać testowalne klasy w Wordpress

text: Obecnie dokonuję pewnych modyfikacji we wtyczce Wordpress, którą stworzyłem, aby była testowalna. Problem polega na tym, że nie wiem, dla jakich metod mam pisać testy. Mam metody, które używają niektórych z tych funkcji i zmiennych globalnych: is_singular() $_GET $_POST $_SESSION `is_singular`, `is_page`, `is_home` i inne funkcje zależą od kontekstu. Nie jestem pewien, jak sfałszować ten kontekst w teście. Próbowałem przekazać je jako argumenty do metod, ale są pewne haki, które nie akceptują dodatkowych argumentów, więc tak naprawdę nie mogę ich przekazać. Czy mogę po prostu dostarczyć te z klasy testowej? Naprawdę mam trudności ze zmodyfikowaniem wtyczki w taki sposób, aby ich nie używać. Jakieś pomysły? **Aktualizacja** Do testów jednostkowych używam wordpress-testów i PHP Unit. Zrobiłem trochę badań na temat testów jednostkowych zanim zacząłem i jest praktyka, że podczas testów jednostkowych należy unikać zmiennych globalnych.


title: bardzo wolne zapytanie wordpress z domyślnym zapytaniem

text:
Zadawałem pytania dotyczące tego problemu, ale niestety nie otrzymałem bloga pomocy pod tym adresem: http://fixapk.com Obecnie blog zawiera około 560 000 aplikacji (560 000 równoważnych postów), każdy artykuł obejmuje około 20 niestandardowych pól, dlatego tabela wp_postmeta jest największej tabeli ( z około 10 milionami rekordów ) Jednak przy zapytaniu do tabeli wp_postmeta bardzo dobre dla szybkości , na przykład : Przy dostępie do pojedynczego posta przy zapytaniu artykułów związanych z tytułem , szybkość jest bardzo dobra ( można dostęp do artykułu, aby zobaczyć dowolną prędkość ) Lub : Podczas korzystania z funkcji wyszukiwania pokazuje dobrą prędkość (nie najlepszą) Ale gdy dostęp do kategorii , prędkość jest naprawdę niska, na przykład podczas uzyskiwania dostępu do kategorii APPS ( fixapk.com/apps ) lub GAMES ( fixapk.com/games ) , prędkość jest zbyt niska Kategoria aplikacji ma około 300 tys . postów . Oznacza to, że domyślne zapytanie wordpressa jest bardzo wolne (baza zapytania na kategorii) i oto zawartość pliku archive.php <?php get_header(); ?>
 <?php if (have_posts()):while(have_posts()):the_post(); $numdown=get_post_meta($post->ID,'_numdown',prawda); $icon=get_post_meta($post->ID,'_icon',prawda); $screenshot=get_post_meta($post->ID,'_screenshot',true); $language=get_post_meta($post->ID,'_language',prawda); $licesne=get_post_meta($post->ID,'_licesne',true); $os=get_post_meta($post->ID,'_os',prawda); //.... ?>
 <img src="<?php echo $icon; ?>" /> <a href="<?php the_permalink(); ?> "><?php tytuł_(); ?> <?php the_fragment(); //.....?>

 <?php get_footer(); ?> Jak więc zastąpić domyślne zapytanie, aby przyspieszyć wordpress Czekamy na pomoc


title: Niestandardowe warunki w zapytaniu wp

text: To są podstawowe argumenty zapytania. $loop = new WP_Query(array('post_type' => 'projekt', 'posts_per_page' => -1)); Teraz chcę przekazać niestandardowe argumenty, takie jak 1. Jeśli jest to strona główna post_type będzie „post”, a post na stronę będzie „4”. Wiem, jak to zrobić `is_front_page() {//do rzeczy tutaj}` .Ale Chcę wstrzyknąć warunek w ten sposób $loop = new WP_Query(array('post_type' => 'is_front_page() {//do rzeczy tutaj}', 'posts_per_page' => -1)); Czy mogę to zrobić?


title: Wyślij zaproszenia e-mailem. zaprosić do grupy kogoś, kto nie jest jeszcze członkiem buddypress

text: Używam wordpress 3.8, buddypress Version 1.9, zaproś kogokolwiek Wtyczka do zapraszania ludzi do grupy przez e-mail Mod grupowy musi wysłać zaproszenie e-mailem do tego używam wtyczki zaproś kogokolwiek, ale pokazuje całą listę członków na mojej stronie, w tym wyślij zaproszenie e-mailem Teraz muszę ukryć całą listę członków do grupy modów na grupach buddypress Proszę o pomoc, z góry dziękuję za pomoc Dzięki i pozdrawiam,


title: Jak uzyskać kod SQL zmian wprowadzonych w bazie danych z aktualizacji lub uaktualnienia?

text: Kiedy aktualizuję/uaktualniam wtyczkę, motyw, a nawet rdzeń WordPressa, ma to wpływ na bazę danych, zmienia wiele rzeczy. Jak mogę to śledzić? Problem w tym, że mam repozytorium, wszystkie zmiany w plikach są poprawnie śledzone, ale nie mam pojęcia jak stworzyć plik SQL do przechowywania zmian w bazie danych (alter, insert, update, drop, create itp.). Używam narzędzia jakim jest Flyway, które wybiera listę plików SQL, które mam w repozytorium i stosuje zapytanie każdego pliku do bazy danych, więc moje pytanie brzmi, jak utworzyć lub uzyskać zapytanie SQL o wszystkie zmiany dokonane przez aktualizację/uaktualnienie przyszłości WordPressa? W ten sposób cały zespół będzie mógł po prostu wyciągnąć z repozytorium, a wprowadzone przeze mnie zmiany zostaną rozpowszechnione. Dziękuję.


title: wp_update_post zachowuje się inaczej dla różnych ról użytkownika

text: { "sections": [ { "section_name": "Objective", "data": "Test", "key": "ref" } ] } Aktualizuję powyższe dane JSON jako zwykły tekst za pomocą wp_update_post data = <<<EOD {"sections":[{"section_name":"Cel","data":"Test","key":"ref"}]} EOD; $new = array( 'post_title' => $title, 'post_content' => $data, 'post_author' => $userid, 'post_status' => 'pending', 'post_type' => 'post' ); $id = wp_insert_post($nowy ); Dane są zapisywane dokładnie tak, jak zostały przekazane z ukośnikami, tylko przy logowaniu „Administrator”. We wszystkich innych typach użytkowników, np. „subskrybent”, ukośniki są automatycznie usuwane podczas zapisywania. co czyni go nieprawidłowym JSON. Jak zapisać dokładnie przekazane dane dla wszystkich typów użytkowników?


title: CPT-onomie CPT_TAXONOMY->get_terms bardzo wolne z 6K postów

text: Obecnie mam stronę z postami 6K. Do postów dołączone są 3 taksonomie CPT. Kiedy próbuję uzyskać dostęp do .../wp-admin/edit.php, otrzymuję następujący błąd LONG QUERY: SELECT wpposts.ID, ( SELECT COUNT(*) FROM wp_postmeta wpmeta INNER JOIN wp_posts wpmetaposts ON wpmetaposts.ID = wpmeta.post_id AND wpmetaposts.post_type IN ( 'post' ) ORAZ wpmetaposts.post_status = 'publish' GDZIE wpmeta.meta_key = '_custom_post_type_onomies_relationship' AND wpmeta.meta_value = wpposts FROM wp_s count 's count ) 1000197','21759','21205','21204','21203','21202','21201','21200','21199','20207','20205','20200','20149' ,'19337','19154','19139','18632','18311','18306','18304','18287','18285','18279','18277','18275',' 18273','18247','18086','17693','17621','17284','17134','16976','16970','16946','16759','16703','16702' „16701”, „16699”, „16698”, „16697”, „16696”, „16695”, „16694”, „16693”, „16660”, „16299”, „16192”, „16187”,” 16178','16176','16173','16170','16169','16160','16156','16154','16152','16054','16053','16052','15924' ,'15890','15884','15844','1583 1','15672','15485','15406','15299','15196','15180','15168','15060','15005','14996','14886','14749' „14681”, „14680”, „14679”, „14677”, „14662”, „14610”, „14586”, „14422”, „14421”, „13982”, „13683”, „13682”, 13666','13576','13568','13555','13553','13495','13406','13405','13399','13394','13393','13392','13390' ,'13389','13354','13321','13319','13302','13301','13300','13299','13184','13128','13075','13071',' 12996','12774','12773','12308','12197','12050','12033','11782','11206','10821','10820','10816','10788' ,'10286','10280','10279','10278','10277','10276','10275','10267','10264','8753','8482','8481',' 8480','8479','8478','8477','8476','8475','8445','7768','7353','6948','6900','6899','6898' ,'6896','6895','6894','6877','6730','6611','6609','6605','6565','6372','5992','5660',' 5577','5510','5492','5359','5119','5004','4964','4963','4961','4919','4844','4817','4813' ,'4531','4052','4051','4050','4048','4047','4046','4045','4044','4042','4041','4039',' 4038','3987','3986','3984','3983','3964','3703','3699','3 540','3475','3474','3450','3430','3403','3402','3401','3336','3325','3281','3243','3234' ,'3091','3041','2928','2900','2889','2869','2828','2826','2801','2735','2719','2703',' 2702','2699','2651','2632','2631','2630','2629','2568','2511','2475','2407','2386','2361' ,'2332','2318','2300','2123','2122','2066','2042','2039','2038','2004','2003','2002',' 1974','1917','1856','1673','1671','1612','1532','1530','1507','1455','1452','1196','1189' ,'1188','1128','894','893','892','891','855','854','850','609','608','548',' 449','286','285','241','159','146','144','141','93','92','91','85','84' „73”, „72”, „71”, „70”, „69”, „68”, „67”, „66”, „65”, „64”, „63”, „62”, „ 61','60','59','58','57','56','55','54','53','52','51','50','49' „48”, „47”, „46”, „45”, „44”, „43”, „42”, „41”, „40”, „39”, „38”, „37”, „ 36','35','34','33','32','31','30','29','28','27','26','25','24' ,'23' ) AND wpposts.post_status = 'publish' ORDER BY wpposts.ID ASC Jeśli odłączę wszystkie taksonomie oprócz jednej, mogę przejść do .../wp-admin/edit.php. Monitor zapytań pokazuje następujące statystyki: > SZYBKOŚĆ: czas ładowania 15,03 sekundy > > **CPT_TAXONOMY->get_terms** 4 13.3913 > > **CPT_TAXONOMY->wp_get_object_terms** 2 0,2535 Próbuję znaleźć najlepszy sposób na modyfikację wtyczki, aby zaczepy zapytań nie powodowały, że strony edycji są niedostępne. Jeśli ktoś jest zaznajomiony z tą wtyczką i może mieć jakieś sugestie dotyczące optymalizacji, naprawdę to docenię!


title: Problem z wieloma tagami w adresie URL

text: Użyłem linku mojadomena.com/tags/tag1,tag2/ na mojej witrynie Wordpress bez żadnych problemów. Ale to nie działa od pewnego momentu. Wyświetla błąd 403: Zabronione. Zauważyłem, że linki z samym tagiem działają dobrze, ale z wieloma nie. Co może być problemem?


title: wp_redirect pokazuje nagłówek już wysłanej wiadomości

text: Jestem nowy w tworzeniu wtyczek wordpress. Utworzyłem stronę listy i stronę dodawania przedmiotów. Po pomyślnym dodaniu chcę przekierować i wyświetla mi się ten błąd. ![tutaj podaj opis obrazu](http://i.stack.imgur.com/5t4zE.png) **Zauważ, że błąd jest w `pluggable.php w wierszu 876`** Sprawdziłem wiele źródeł, ale nie mogę znaleźć dotychczasowe rozwiązanie 1. Użyłem `wp_redirect('admin.php?page=ccURLList'); exit;` daje załączony błąd 2. Użyłem `no-header` w ciągu zapytania przy przesyłaniu formularza, to działa, ale w przypadku jakiegokolwiek błędu chciałem ponownie wyświetlić stronę i ta strona nie ma żadnego paska bocznego lub wp stuff 3. Kiedy przenoszę `wp_redirect` do mojego głównego pliku `clickCounter.php` mówi, że funkcja jest nieznana Jeśli ktoś z was może rozwiązać ten problem, będzie to bardzo mile widziane. **EDIT** `clickCounter.php` to mój główny plik. Tworzy menu itp. Mam stronę z listą, która działa. Mam stronę dodawania. Umieściłem wp_redirect w pierwszych wierszach po <?php // ccURLAdd.php moja strona dodawania if (!defined('ABSPATH')) die('Nie możesz wywoływać tej strony bezpośrednio.'); add_action( 'init', 'CCaddNewLink' ); funkcja CCaddNewLink(){ wp_redirect(home_url()); Wyjście; } //wp_redirect('admin.php?page=licznik kliknięć'); Wyjście; Poniżej znajduje się mój główny plik <?php // clickCounter.php moja strona główna. /* informacje o wtyczce */ add_action('admin_menu', 'ccAdminMenu'); function ccAdminMenu() { add_menu_page("Licznik kliknięć", "Licznik kliknięć", 8, 'licznik kliknięć', "ccAdminMenuListUrls", CC_HTML_WEB . "/images/icon.png"); add_submenu_page('click-counter', 'Add New Link', 'Add Link', 8, 'click-counter-url-new', 'ccAdminAddUrl'); } function ccAdminAddUrl() { include 'ccURLAdd.php'; }


title: Porządkowanie taksonomii według rangi

text:
Używam funkcji (skopiowanej i zmodyfikowanej nieco z tego pytania), która wyświetla taksonomie w kolejności według rangi z » między rodzicem a dzieckiem i | między terminami, ale pojawia się błąd w wyjściu html i nie rozumiem, co jest nie tak. Oto, co umieściłem w moich funkcjach php (funkcja, którą skopiowałem z pytań WP): function print_taxonomy_ranks( $terms ) { // jeśli termy nie są tablicą lub są puste, nie kontynuuj jeżeli ( ! is_array( $terms ) || empty ( $terms ) ) { return false; } foreach ( $terms as $term ) { // jeśli termin ma rodzica, ustaw termin podrzędny jako atrybut w warunku nadrzędnym if ( $term->parent != 0 ) { $terms[$term->parent]- >dziecko = $termin; } else { // zapisz termin nadrzędny $parent = $term; } echo "taksonomia/$parent->slug'>$parent->nazwa » dziecko->taksonomia}/{$parent->dziecko->slug}'>{$parent->dziecko->nazwisko} | "; } } (Uwaga: używam ścieżki bezwzględnej `http://blogadress`, ponieważ uruchamiam ją lokalnie i nie udaje mi się sprawić, by działała inaczej) A oto, co umieściłem w moim pliku szablonu
< ?php print_taxonomy_ranks( get_the_terms( $post->ID, 'soggetto' ) ); ?>
 Oto NIEPRAWIDŁOWE wyjście HTML, które otrzymuję: error1: pierwsze dwa terminy nie pojawiają się (tylko link do strony głównej bloga z podwójnym ukośnikiem na końcu, nie połączony z niczym); błąd 2 (niechciane zachowanie): terminy rodzice pojawiają się dwa razy: raz jako samotni, a raz jako rodzice dzieci.
 »  | rodzic1 » dziecko1 | rodzic2 »  | rodzic2 » dziecko2 |


title: Jak dodać kartę „Wstaw z adresu URL” do niestandardowego programu do przesyłania multimediów 3.5?

text: Wstawiłem program do przesyłania multimediów WP 3.5 do widżetu, uruchamiając ten JavaScript po kliknięciu przycisku: var frame = wp.media( { title: 'Widget Uploader', multiple: false, library: { type: 'image' }, przycisk : { text : 'Wybierz obraz' } } ); frame.on( 'zamknij', function() { var attachments = frame.state().get( 'wybór' ).toJSON(); imageWidget.render(widget_id, widget_id_string, attachments[0] ); } ); ramka.otwórz(); zwróć fałsz; To daje mi modalny, który ma zakładki „Prześlij pliki” i „Biblioteka multimediów”, ale chcę również, aby zawierał zakładkę „Wstaw z adresu URL”, którą otrzymujesz po kliknięciu przycisku „Dodaj multimedia” podczas edytowania postu /strona. ![tutaj podaj opis obrazka](http://i.stack.imgur.com/KV78g.png) Spędziłem kilka godzin na grzebaniu w sieci, czytaniu kodu źródłowego i oglądaniu prezentacji Daryla Koopersmitha na stronie przesyłającego backend, ale nie byliśmy w stanie tego rozgryźć. Czy ktoś może wskazać mi właściwy kierunek? Czy istnieje parametr, który mogę przekazać do wp.media(), aby go dołączyć, czy też powinienem użyć jednego z wbudowanych widoków/modeli, które go zawierają?


title: Galeria Nextgen i pokaz slajdów: obrazy się nie zmieniają

text: Jeśli nie używam opcji Flash Slideshow, pokaz slajdów pokazuje tylko pierwszy obraz. Nie przechodzi do następnego obrazu. FireBug wyświetla następujący błąd: `TypeError: a.browser is undefined` w pliku `/wp-content/plugins/nextgen- gallery/js/jquery.cycle.all.min.js?ver=2.9995`. Używam jQuery 1.9.1 dla mojego niestandardowego motywu i galerii NextGEN 1.9.12. Jakieś pomysły?


title: Podaj Apache 404 dla brakujących zasobów zamiast szablonu wp 404 WP_Rewrites

text: Mam niestandardową stronę 404, ale nie chcę jej wyświetlać dla każdego uszkodzonego zasobu, który może się pojawić. Zamiast tego chcę po prostu obsługiwać Apache 404, ponieważ jest znacznie szybszy. Znalazłem następującą regułę htaccess, która pozwoli osiągnąć to, co po mnie: RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule \.(jpg|jpeg|png|gif|ico|swf|bmp|js|css)$ - [ nocase,redirect=404,last] Ale zamiast ręcznie umieszczać go w pliku htaccess przed `# BEGIN WordPress` Chciałbym programowo dodać regułę za pomocą motywu, ponieważ próbuję również zrozumieć API przepisywania WP. Poniżej znajdują się moje aktualne reguły z kluczową linią dodaną ręcznie do testowania: # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteRule ^assets/css/(.*) /wp -content/themes/tr_roots_0.4.1/assets/css/$1 [QSA,L] RewriteRule ^assets/js/(.*) /wp-content/themes/tr_roots_0.4.1/assets/js/$1 [QSA,L] RewriteRule ^assets/img/(.*) /wp-content/themes/tr_roots_0.4.1/assets/img/$1 [QSA,L] RewriteRule ^plugins/(.*) /wp-content/plugins/$1 [QSA, L] RewriteCond %{REQUEST_FILENAME} !-f RewriteRule \.(jpg|jpeg|png|gif|ico|swf|bmp|js|css)$ - [nocase,redirect=404,last] RewriteCond %{REQUEST_FILENAME} !- d Przepisz regułę . /index.php [L] </IfModule> Szukałem wielu przykładów i starałem się to osiągnąć, ale wydają się one nadmiernie skomplikowane i nie mają bezpośredniego zastosowania. Czy ktoś mógłby spróbować skierować mnie we właściwym kierunku? Oto, co mam (nie robię sztuczki) do tej pory: function tr_flush_rewrites() { global $wp_rewrite; $wp_rewrite->flush_rules(); } funkcja tr_add_rewrites() { globalna $wp_rewrite; $tr_new_non_wp_rules = array( '\.(jpg|jpeg|png|gif|ico|swf|bmp)$' => 'nocase,redirect=404,ostatni', ); $ wp_rewrite-> non_wp_rules = $ tr_new_non_wp_rules + $ wp_rewrite-> non_wp_rules; } add_action('generate_rewrite_rules', 'tr_add_rewrites'); add_action('admin_init', 'tr_flush_rewrites'); Dzięki za opiekę


title: wp_nav_menu: current_post_ancestor-category rodzic

text: Mam nav w ten sposób: * strona 1 -- strona 1.1 -- kategoria 1.2 * strona 2 * strona 3 Kiedy jestem na pojedynczym poście w kategorii 1.2, kategoria-menu-item otrzymuje poprawną klasę `current-post -ancestor` i `current-post-parent`, ale strona 1 nie ma żadnej klasy rodzica ani przodka. Czy istnieje sposób na dodanie klasy `foobar"` w dół hierarchii nawigacji? Zrobiłem kilka filtrów dla `nav_menu_css_class`, ale nie mogę uzyskać poprawnego zachowania.


title: Dodawanie niestandardowych stylów do elementów, bez tworzenia nowych elementów

text: Więc używam filtru `tiny_mce_before_init`, aby dodać kilka klas do `wp_editor` i otrzymuję nieoczekiwane wyniki. Nie używałem tego wcześniej, ale z tego, co czytam i co mówią mi moi rówieśnicy, powinienem być w stanie zastosować klasy do elementów bezpośrednio w edytorze, a nie tworzyć elementu opakowującego. Więc mam to: $new_styles = array( array( 'title' => __( 'Własne style', 'title' ), array( 'title' => __('Table Header','kjd'), 'classes ' => 'table-header', 'wrapper' => true ), array( 'title' => __('Table Subheader','kjd'), 'classes' => 'table-subheader', 'wrapper' => true ).... Z tego co rozumiem, zarówno `'inline'` jak i `'block'` są opcjonalne, a argument `'wrapper'=>true` zastosuje klasę do wybranego elementu, a nie zawija to w czymkolwiek.Ale bez względu na to, które opcje zastosuję (takie jak `'wrapper'=>false` lub `'block' => 'td'` ) działają.W każdym razie, powiedziano mi, że ta funkcjonalność zmieniła się w WP 3.9 Moim celem jest zastosować niektóre klasy do komórek tabeli, aby kiedy mój klient kopiował i wklejał w tabeli, mógł ją odpowiednio nadać stylowi dobrze. Klikają komórkę i stosują styl do tej komórki.


title: Aktualizacje bezpieczeństwa do 3.3.2

text: Wiem, że wszystkie aktualizacje zabezpieczeń są ważne, ale biorąc pod uwagę, że jak ważna w skali od 1 do 10 jest aktualizacja z wersji 3.1.3 do 3.3.2. Mam kilka witryn, które wymagają aktualizacji, ale host zablokował mnie w starszej wersji php, która ogranicza mnie do 3.1.3. Obecnie używam wersji 5.2.3 php. Dzięki, Barcie


title: Czy można zatrzymać ładowanie wybranych wtyczek na niektórych stronach szablonu?

text: Mam stronę szablonu z formularzem, który jest używany tylko raz w mojej witrynie. Formularz wykorzystuje walidację formularzy za pomocą wtyczki jquery validate (taka świetna wtyczka). Po załadowaniu wtyczki cart66 sprawdzanie poprawności formularza przestaje działać. Zamiast spędzać wieki na szukaniu konfliktu, pomyślałem, że najłatwiej będzie po prostu wyłączyć wtyczkę dla tej strony szablonu, ponieważ cart66 nie jest potrzebny na tej stronie. Czy można zatrzymać ładowanie wtyczek na poszczególnych stronach szablonu? Używam WordPressa 3.2.1


title: Jak byś wymagał i automatycznie pobierał zależne wtyczki?

text: Zastanawiałeś się, czy istnieje klasa lub technika programowania, która pozwoliłaby mi sprawdzić instalację i aktywację konkretnej wtyczki, a jeśli ta wtyczka nie została zainstalowana, aby pobrać ją z repozytorium wtyczek WordPressa? Mam wtyczkę, której chciałbym wymagać od scribu's Post 2 Post i zastanawiałem się, jak to zrobić?


title: Wtyczka do przypisywania kategorii nadrzędnej do wielu terminów taksonomii

text: Odziedziczyłem bałagan po stronie WP. Muszę być w stanie wziąć ponad 100 kategorii i zmienić układ relacji rodzic/dziecko. Potrzebuję czegoś z interfejsem użytkownika, który to ułatwi. Czy ktoś zna wtyczkę, która to robi?


title: Czy Wordpress może przekierować do „podobnej strony” w przypadku błędu 404?

text: Te rzeczy doprowadzają mnie do szału. Poniższy adres URL NIE istnieje i powinien zwracać 404: http://www.easyjob.net/resume/ Jednak jeśli próbuję uzyskać do niego dostęp, otrzymuję 301 do http://www.easyjob.net/r/ list motywacyjny/resume-and-cover-letter/ Nawet jeśli dodam przekierowanie do .htaccess, aby przekierować go gdzie indziej, nadal otrzymuję ***** 301 na http://www.easyjob.net/r /list-motywowy/wznowienie-i-list-tytulowy/ ponownie. Czy ktoś wie, co się dzieje? PS to jest .htaccess: AddHandler php5-script .php # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST !-d Reguła przepisywania . /index.php [L] </IfModule> # ZAKOŃCZ WordPress #/RESUME/ Przekieruj http://www.easyjob.net/resume/ http://www.easyjob.net/r/ [R=301,NC, L]


title: Jak programowo opróżnić kosz?

text: Muszę utworzyć przycisk „Opróżnij kosz” w mojej wtyczce. Jak mam to zrobić za pomocą kodu PHP?


title: Zapytanie WP — miniatura posta

text:
Używam wtyczki: Seria i domyślnie pobiera tylko połączone tytuły postów. Chciałbym również dodać miniatury postów. Udało mi się wyświetlić miniatury, ale pojawiają się one poza widżetem. Dodałem: części the_post_thumbnail('thumbnail'). Pełny szablon znajduje się poniżej. Dziękuję za pomoc! /** * Wyświetla listę postów według identyfikatora serii. * * @since 0.1.0 * @param array $args * @return string */ function series_list_posts( $args = array() ) { if ( empty( $args['series'] ) ) return; $out = ''; $post_id = 0; if ( in_the_loop() ) $post_id = get_the_ID(); else if ( is_singular() ) $post_id = get_queried_object_id(); $defaults = array( 'series' => '', // term slug 'order' => 'ASC', 'orderby' => 'date', 'posts_per_page' => -1, 'echo' => true, ); $args = wp_parse_args($args, $defaults); $pętla = nowe WP_Query( $args ); if ( $loop->have_posts() ) { $out .= '
'; while ( $loop->have_posts() ) { $loop->the_post(); $out .= $post_id === get_the_ID() ? the_title( '
' . the_post_thumbnail('thumbnail') . '
', false ) : the_title( '
' . the_post_thumbnail('thumbnail') . '', '
', fałsz ); } $out .= '
'; } wp_reset_postdata(); if ( false === $args['echo'] ) return $out; echo $out; } /** * Wyświetla listę wpisów powiązanych z wpisem według pierwszej serii. * * @since 0.1.0 * @param array $args * @return string */ function series_list_related( $args = array() ) { $post_id = 0; if ( in_the_loop() ) $post_id = get_the_ID(); else if ( is_singular() ) $post_id = get_queried_object_id(); if ( !empty( $post_id ) ) $series = get_the_terms( $post_id, 'series' ); if ( empty( $series ) ) return; $seria = reset( $seria ); $args['series'] = $series->slug; return series_list_posts( $args ); } /* === DEPRECATED === */ /** * @since 0.1.0 * @deprecated 0.2.0 */ function get_series_feed_link( $cat_id, $feed = '' ) { _deprecated_function( __FUNCTION__, '0.2.0 ', 'get_term_feed_link' ); return get_term_feed_link( $term_id, 'seria', $feed ); } /** * @since 0.1.0 * @deprecated 0.2.0 */ function is_series( $slug = false ) { _deprecated_function( __FUNCTION__, '0.2.0', 'is_tax' ); return is_tax( 'seria', $slug ); } /** * @since 0.1.0 * @deprecated 0.2.0 */ function in_series( $series, $_post = null ) { _deprecated_function( __FUNCTION__, '0.2.0', 'has_term' ); return has_term( $seria, 'seria', $_post ); } /** * @since 0.1.0 * @deprecated 0.2.0 */ function create_series_taxonomy() { _deprecated_function( __FUNCTION__, '0.2.0', '' ); } /** * @since 0.1.0 * @deprecated 0.2.0 */ function series_register_widgets() { _deprecated_function( __FUNCTION__, '0.2.0', '' ); }


title: Zmień pozycję wyskakującego okienka Simple Facebook Connect

text: **Czy można dodać parametr do Simple Facebook Connect i funkcję sfc_like_button, aby wyskakujące okienko wyleciało w lewo?** W tej chwili wylatuje w prawo i znajduje się pod ciemną zewnętrzną otoką strony. _(patrz poniżej)_ Dzieje się tak w przeglądarkach Firefox, IE i Safari. Użycie `overflow:visible` w zawierającym `div` nie pomaga. Próbowałem użyć pozycjonowania i indeksu Z w tym div i elementów zawierających, aby umieścić wyskakujące okienko na wierzchu opakowania bez powodzenia. Czy jest to funkcja wyjścia ramki iFrame na Facebooku, której nie można zmienić? ![screenshot](http://i.stack.imgur.com/6HJUx.png) Jest to funkcja zawierająca SFC: <?php sfc_like_button(array('width' => '125', 'height' => '20', 'layout' => 'button_count')); ?> To jest wynikowy kod HTML w źródle strony: <fb:like href='http://mojadomena.com/page/' send='false' layout='button_count' show_faces='true' width='125' height ='20' action='like' colorscheme='light' font='lucida+grande'></fb:like>


title: get_term_children nie zwraca tablicy terminów potomnych

text: Próbuję zdobyć termin dzieci, a następnie sprawdzić, czy istnieją, aby je pokazać. Ale nie otrzymuję identyfikatorów w odpowiedzi na polecenie get_term_children. Oto kod: $children = get_term_children($term->term_id, lokalizacje); echo $dzieci; $term jest już zdefiniowany i daje dobre wyniki, istnieje taksonomia „lokalizacji”. Kod zwraca mi tylko słowo „Tablica”, nie pojawia się lista terminów podrzędnych. Mam podobny kod na moich stronach archiwum postów i działa dobrze, zwracając mi kategorie potomne w formacie n/n/n/n/n: $children = get_category_children($this_category->cat_ID); echo $dzieci; Co jest nie tak z pierwszym kodem? Powinien działać równie dobrze jak drugi.


title: Polecany rozmiar miniatury obrazu na stronie archiwum dwudziestu dziesięciu

text: Zorientowałem się, jak sprawić, by miniatura pojawiła się na dwudziestu dziesięciu stronach archiwum, ale nie mogę zrozumieć, jak zmienić jej rozmiar, aby powiedzieć rozmiar „150px” na „150px”. Na przykład na następnej stronie wyróżniony obraz pokazuje pełną szerokość fragmentu posta, chcę tylko, aby po lewej stronie fragmentu posta miał szerokość 150 pikseli, a duży obraz w pełnym rozmiarze pojawił się na rzeczywistej stronie posta, gdy tylko kliknij i przeczytaj cały post. Zobacz: http://www.westlimerickphysio.com/category/physiotherapynews/ Mam nadzieję, że wyrażam się jasno. Pozdrawiam, Noelu.


title: Dlaczego podwójne kropki (..) są nieprawidłowe w nazwie pliku obrazu Wordpress?

text: `ms-files.php` zawiera następujący fragment kodu: $file = rtrim( BLOGUPLOADDIR, '/' ) . '/' . str_replace( '..', '', $_GET[ 'plik' ] ); if ( !is_file( $file ) ) { status_header ( 404 ); die( '404 — Nie znaleziono pliku.' ); } Ten kod określa, czy plik można znaleźć, czy nie. Jednak robi coś, co uważam za... Dziwne. Usuwa wszystkie podwójne kropki ("..") z ciągu. Zwykle nie ma to znaczenia, ale użytkownicy przesyłali pliki z dwiema kropkami z rzędu (westchnienie), powodując, że ta część kodu nieprawidłowo zgłasza kod 404 (nie znaleziono). Kusi mnie, aby usunąć dziwną, dwuokresową naturę usuwania tego kodu, ale obawiam się, że nieumyślnie złamię coś innego. Dlaczego ta funkcja jest obecna, ponieważ jest zakodowana? Dziękuję! :) Edytuj: Żeby było jasne, wydaje się, że podwójne kropki NIE są nieprawidłowe w Wordpressie, ale nie mogą być obsługiwane przez ten fragment kodu... Więc nie są nieważne, ale przy dostępie za pośrednictwem tego mechanizm, 404 jest błędnie zgłaszany.


title: ignore_sticky_posts nie działa z wordpress w wersji 3.9.1

text:
Próbuję wyświetlić przyklejony post według identyfikatora kategorii. Przyklejony wpis jest wyświetlany, ale problem polega na tym, że opublikowany przyklejony wpis jest wyświetlany dwukrotnie. Na poniższym zrzucie migawkowym widać, że ten sam przyklejony post jest wyświetlany dwukrotnie (jest podświetlony niebieską strzałką). Nie chcę wyświetlać przyklejonych wiadomości tytułowych w podtytule przyklejonych wiadomości. Możesz zobaczyć na poniższym zdjęciu. To są te same wiadomości pierwsza strzałka jest przyklejona Ustawiłem z zaplecza, a druga strzałka to te same wiadomości wyświetlane poniżej przyklejone patrz tutaj . ![sticky](http://i.stack.imgur.com/pnb6B.png) Poniżej znajduje się kod do ustawienia przyklejania z posta widżetu
 <?php $args = array( 'category_name' => 'maharasztra' , 'post__in' => get_option( 'sticky_posts' ), 'showposts' => '1', ); $the_query = nowe WP_Query( $args ); while ($the_query -> have_posts()) : $the_query -> the_post(); ?>

<a title="<?php the_title(); ?>" href="<?php the_permalink() ?>" rel="zakładka"><?php the_post_thumbnail (array(342,173), array ('class' => 'alignleft1')); ?>

<a title="<?php the_title(); ?>" href="<?php the_permalink() ?>" rel="zakładka" ><?php tytuł_(); ?>

 <?php endwhile; ?>
 Poniżej znajduje się mój przykładowy kod do wyświetlenia ostatniego posta.

महाराष्ट्र
 < ?php $recent = new WP_Query("cat=255&showposts=6&ignore_sticky_posts=1"); ?>
 <?php while($recent->have_posts()) : $recent->the_post(); $postzmienna++; if ($postvariable == 1) { ?>
[widget id="text-8"]
 <?php } else { ?>

<a href ="<?php the_permalink() ?>" title="<?php the_title(); ?>" rel="zakładka"><?php the_title(); ?>


title: Zmieniono podstronę na własną domenę wyzwalającą przekierowania 302 dla wszystkich linków do stron

text: Poniżej nazywam witrynę programistyczną `mainsite.com` (zawierającą instalację WPMS) i domenę, która będzie wskazywać na norweską podstronę `mainsite.com`, ja nazywam `launchsite.no`. **Norweska podstrona** jest gotowa do uruchomienia, a klient jest gotowy do wskazania `launchsite.no` instalacji Wordpress. Ręcznie wskazuję `launchsite.no` na poprawny adres IP w HOSTS, aby upewnić się, że jest gotowy na 'przełącznik'. Więc to nie jest kwestia migracji. Host wewnętrznie utworzył alias dla `launchsite.no`, aby był to ten sam katalog, w którym znajduje się instalacja WPMS. * Witryna działa idealnie, gdy domena jest ustawiona na `mainsite.com` a ścieżka jest ustawiona na `/no/` (w wp-admin). * Samo wskazanie `launchsite.no` na adres IP serwera daje mi `mainsite.com` (strona główna, nie Norwegian). (A `launchsite.no/wp-admin` nie działa.) * Zmieniłem domenę na `launchsite.no` i ścieżkę na `/` dla strony norweskiej. * Daje mi to `launchsite.no` (tak!) i jeśli najadę na wszystkie linki w witrynie, są one poprawne, np. launchsite.com/om-oss (strona O nas). Ale kiedy je klikam, wszystkie dają 302 Przeniesiony tymczasowo i kończę na `mainsite.com`! Mam problem z debugowaniem tego. Przeczytałem te dokumenty i te z kodeksu The Site URL i Home w bazie danych są poprawne i nie ma odpowiednich wystąpień `mainsite.com/no/`. Przetestowałem niektóre adresy URL, które działają, a inne nie, mając nadzieję, że dadzą wskazówkę. * `launchsite.no/wp-admin/` - OK (uff!) * `launchsite.no/` - OK, norweska strona startowa. * `launchsite.no/om-oss` (strona) — 302 przekierowanie do `mainsite.com`! * `launchsite.no/?pagename=om-oss` (ta sama strona) - OK! * `launchsite.no/?page_id=18` (ta sama strona) - 302 przekierowanie do `mainsite.com`. Wyłączyłem wtyczki Rewrite i Yoast SEO (ponieważ są w stanie wykonywać przekierowania 301), bez różnicy. Zapisałem i opróżniłem reguły przepisywania Wordpressa. Gospodarz nie pomoże mi z Wordpressem, ale po prostu mówi, że WP Multisite działa na ich serwerach. Byłabym więc bardzo wdzięczna za sugestie co to powoduje, gdzie powinienem szukać. ## Wygląda na to, że własne tłumaczenie permalink Wordpressa jest zepsute po "przeniesieniu podstrony". **UPDATE:** ## Myślę, że wykluczyłem wszystko oprócz błędu w wp_rewrite. Czy istnieje sposób, aby złapać lub zarejestrować, co Wordpress przepisuje stronę do Permalinków? Czy oprócz siteroot i home jest jeszcze trzecia wartość, którą mógłbym sprawdzić w bazie danych? Oto mój plik .htaccess (standardowy, z artykułu o wielu witrynach na wordpress.com): Opcje Wszystkie -Indexes DirectoryIndex index.php index.html index.htm #upewnij się, że w witrynie deweloperskiej nie jest ona znaleziona przez wyszukiwarki. Zestaw nagłówków X-Robots-Tag "noindex, nofollow" # POCZĄTEK WordPress <IfModule mod_rewrite.c> Opcje +FollowSymlinks RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] # dodaj końcowy ukośnik do /wp-admin RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L] RewriteCond %{REQUEST_FILENAME} -f [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^ - [L] RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L] RewriteRule ^([_0-9a-zA-Z -]+/)?(.*\.php)$ $2 [L] RewriteRule . index.php [L] # KONIEC WordPress A oto mój wp-config: $table_prefix = 'wp_'; /** * Zlokalizowany język WordPressa, domyślnie angielski. * * Zmień to, aby zlokalizować WordPress. Odpowiedni plik MO dla wybranego języka * musi być zainstalowany w wp-content/languages. Na przykład zainstaluj * de_DE.mo do wp-content/languages i ustaw WPLANG na 'de_DE', aby włączyć obsługę języka niemieckiego *. */ define('WPLANG', ''); /** * Dla programistów: tryb debugowania WordPressa. * * Zmień to na true, aby włączyć wyświetlanie powiadomień podczas opracowywania. * Zdecydowanie zaleca się, aby twórcy wtyczek i motywów używali WP_DEBUG * w swoich środowiskach programistycznych. */ define('WP_DEBUG', fałsz); /* Multisite */ define( 'WP_ALLOW_MULTISITE', true ); define('MULTISITE', prawda); define('SUBDOMAIN_INSTALL', false); define('DOMAIN_CURRENT_SITE', 'mainsite.com'); define('PATH_CURRENT_SITE', '/'); define('SITE_ID_CURRENT_SITE', 1); define('BLOG_ID_CURRENT_SITE', 1); define('WP_POST_REVISIONS', prawda); zdefiniuj ( 'WP_AUTO_UPDATE_CORE', fałsz ); /* To wszystko, przestań edytować! Miłego blogowania. */ /** Bezwzględna ścieżka do katalogu WordPress. */ if ( !defined('ABSPATH') ) define('ABSPATH', dirname(__FILE__) . '/'); /** Konfiguruje zmienne WordPress i dołączone pliki. */ require_once(ABSPATH . 'wp-settings.php');


title: Liczenie postów pętli (WP_Query)?

text:
Próbowałem w ten sposób wyświetlić NIE postów: <?php $news_2 = new WP_Query( array ('post_type'=> 'jobs','posts_per_page'=> '10' 'meta_key' => 'status_for_jobs','meta_value ' => '1') ); if ( $news_2->have_posts() ) { while ( $news_2->have_posts() ) { $news_2->the_post(); $liczba = $news_2->post_count; ?>

<a href="<?php the_permalink(); ?>"><?php the_title(); ?>

 <?php } } ?> <?php wp_reset_query(); ?> jeśli NIE post = 0, muszę to wyświetlić :- <?php $news_2 = new WP_Query( array ('post_type'=> 'jobs','posts_per_page'=> '10' , 'meta_key' => 'status_for_jobs','meta_value' => '1') ); if ( $news_2->have_posts() ) { while ( $news_2->have_posts() ) { $news_2->the_post(); $liczba = $news_2->post_count; if ($count == '0') { ?>

Brak postu

 <?php } else { ?>

<a href="<?php the_permalink(); ?>"><?php the_title(); ?>

 <?php } ?> <?php } } ?> <?php wp_reset_query(); ?> Ale zamiast całości postów, nic nie dostaję. Jakieś sugestie, jak to naprawić?


title: Permalink dla niestandardowego typu postu

text: Stworzyłem niestandardowy typ posta o nazwie praca. Wpisy są generowane za pomocą wp_insert_post() i działa to doskonale. Mój problem polega na tym, że linki bezpośrednie do tych postów są albo złe, albo sam coś zrobiłem nie tak. Zasadniczo post prowadzi do tego adresu URL: http://myblog.eu/job/1-adjointe-de-direction-ee/ i wyświetli się tylko wtedy, gdy wejdę na http://myblog.eu/?job=1- przyłączony-de-kierunek-ee/. Chciałbym, aby każdy post był generowany z odpowiednim linkiem bezpośrednim. Oto losowa tablica postów : [9] => stdClass Object ( [ID] => 42 [post_author] => 1 [post_date] => 2014-03-02 16:40:23 [post_date_gmt] => 2014-03 -02 15:40:23 [post_content] => [reso_job_post id=8] [post_title] => dołączony(e) kierunek, La Ciotat [post_excerpt] => [post_status] => opublikować [comment_status] => zamknięte [ ping_status] => open [post_password] => [post_name] => 8-adjointe-de-direction-la-ciotat [to_ping] => [pinged] => [post_modified] => 2014-03-02 16:40: 23 [post_modified_gmt] => 2014-03-02 15:40:23 [post_content_filtered] => [post_parent] => 0 [guid] => http://myblog.eu/job/8-adjointe-de-direction- la-ciotat/ [menu_order] => 0 [post_type] => job [post_mime_type] => [comment_count] => 0 ) a oto kod, którego używam do generowania postów, wszystkie zmienne są ustawione poprawnie (jak widać powyżej): $new_job_post = array( 'post_content' = > $job_post_shortcode, 'post_title' => $job_post_title, 'post_status' => 'publish', 'comment_status' => 'closed', 'ping_status' => 'open', 'post_name' => $job_post_slug, 'post_type' => 'praca', 'comment_count' => '0' ); wp_insert_post ($new_job_post ); Oto kod, którego używam do tworzenia niestandardowego typu postu: function job_custom_init() { $labels = array( 'name' => 'Jobs', 'singular_name' => 'Job', 'add_new' => 'Dodaj nowy' , 'add_new_item' => 'Dodaj nową książkę', 'edit_item' => 'Edytuj ofertę', 'new_item' => 'Nowa praca', 'all_items' => 'Wszystkie oferty', 'view_item' => 'Wyświetl ofertę ', 'search_items' => 'Szukaj ofert pracy', 'not_found' => 'Nie znaleziono ofert', 'not_found_in_trash' => 'Nie znaleziono ofert pracy w Koszu', 'parent_item_colon' => '', 'menu_name' => ' Oferty pracy'       ); $args = array( 'labels' => $labels, 'public' => true, 'publicly_queryable' => true, 'show_ui' => true, 'show_in_menu' => true, 'query_var' => true, 'rewrite ' => array( 'slug' => 'job' ), 'capability_type' => 'post', 'has_archive' => true, 'hierarchical' => false, 'menu_position' => 5, 'supports' => array( 'tytuł', 'redaktor', 'autor', 'miniaturka', 'wyciąg' ), 'taksonomie' => array( 'kategoria', 'post_tag' ) ); register_post_type( 'zadanie', $args ); } add_action( 'init', 'job_custom_init' ); funkcja my_rewrite_flush() { job_custom_init(); flush_rewrite_rules(); } register_activation_hook( __FILE__, 'my_rewrite_flush' ); Dziękuję Ci.


title: Konflikt jQuery z WordPress 3.2 . WooThemes PremiumNews

text: Dziś rano zaktualizowałem mój wp i po tym kilka jquery mojej strony nie działa. Używam motywu gazety premium woo. Po aktualizacji menu rozwijane kategorii (menu superryby) przestało działać. Używałem wtyczki lightbox do obrazów, które przestały działać. Dezaktywowałem wszystkie wtyczki i sprawdziłem motyw, ale nadal superfish nie działał, zaktualizowałem framework motywów najnowszymi, ale nadal bez efektu. Czy ktoś może mi w tym pomóc? Adres URL mojej witryny to:http://webstutorial.com/, a motyw, którego używam, to:http://demo.woothemes.com/?name=premiumnews


title: Dołącz do wp_users i wp_usermeta

text: Mam niestandardową meta użytkownika o nazwie created_by, która jest identyfikatorem twórcy tego użytkownika. Chcę utworzyć taką tabelę widoków, na przykład: ID user_login created_by 2 andi admin Jak to zrobić?


title: funkcja wyzwolona przez filtr „manage_users_custom_column” nie działa

text: Próbuję dodać niestandardową kolumnę un users.php, ale pozostaje ona pusta. Pomyślnie dodałem kolumnę do strony administratora użytkowników z tym kodem w pliku functions.php mojego motywu: function add_user_test_column( $columns ) { $columns['test1'] = 'Test'; return $kolumny; } add_filter( 'manage_users_columns', 'add_user_test_column' ); Próbowałem dodać coś do kolumny za pomocą tego kodu, ale kolumna pozostaje pusta: function add_test_column_data($v = '', $column_name, $user_id ) { if( 'test1' == $column_name ) { return 'test'. $nazwa_kolumny.$identyfikator_użytkownika; } } add_filter( 'manage_users_custom_column', 'add_test_column_data', 10,3); Widzę, że funkcja uruchamia się, ponieważ jeśli zmodyfikuję powrót do echa w ten sposób: function add_test_column_data($v = '', $column_name, $user_id ) { if( 'test1' == $column_name ) { echo 'test '.$nazwa_kolumny.$identyfikator_użytkownika; } } Widzę "test test test test test test" echo'd wzdłuż górnej części tabeli użytkownika. Jak widać, zmienne przekazywane do funkcji nie są brane pod uwagę. Próbowałem również zmniejszyć priorytet (3. argument do funkcji add_filter) z 10 do 1, bez efektu. Więc moje pytania to: Dlaczego zwrot z tej funkcji nie działa? Dlaczego zmienne przekazywane do funkcji nie są brane pod uwagę? Gdzie powinienem szukać, aby to debugować? Powinienem dodać, że to nie jest waniliowa instalacja. Przejąłem złożoną witrynę na wordpress 3.4.2 z dużą ilością rozszerzeń i >100 000 użytkowników. (i nigdy wcześniej nie korzystałem z Wordpressa... ). Z góry dziękuję za sugestie. Keith


title: Jeden login dla 2 stron internetowych na różnych platformach

text: Mam 2 strony internetowe, 1 w rdzeniu PHP, gdzie użytkownicy są już zalogowani. Mam zakładkę o nazwie 'post'. Kiedy użytkownik kliknie na „post”, odsyła do strony 2, która jest stroną Wordpress. Chcę, aby użytkownik automatycznie logował się i wyświetlał swój wpis. Wszelkie sugestie, jak to zrobić.


title: Uzyskaj liczbę wszystkich kategorii nadrzędnych dla niestandardowej taksonomii

text: Prowadzę blog poświęcony artystom, na którym przeprowadzam wywiady z artystami z różnych krajów i zamieszczam artykuły podróżnicze z różnych krajów. Skonfigurowałem niestandardową taksonomię o nazwie „Nazwa wykonawcy”. To jest używane tylko w wywiadach. Kategorie nadrzędne to różne kraje (Niemcy, USA, Francja, Chiny itd.), kategorie podrzędne to miasta. Używam kategorii we wszystkich postach (wywiady ORAZ podróżnicze). Zrobiłem szablon strony statystyk, na której chcę pokazać całkowitą liczbę krajów, z których pochodzą moje wywiady. Ponadto chcę pokazać całkowitą liczbę krajów, do których podróżowałem. 1) Czy można uzyskać łączną liczbę wszystkich kategorii RODZICÓW postów korzystających z tej niestandardowej taksonomii? 2) Czy można uzyskać łączną liczbę wszystkich kategorii RODZICÓW postów, które NIE używają tej niestandardowej taksonomii (np. gdy nazwa wykonawcy jest pusta)? Próbowałem już użyć niektórych fragmentów kodu, które znalazłem, w tym count(get_categories('parent=0&hide_empty=0'), ale nie jestem tak dobry w PHP, aby to rozgryźć.


title: Jak zmusić Wordpress do tymczasowej zmiany lokalizacji (za pomocą qTranslate)?

text: Mam wielojęzyczny sklep z WooCommerce i qTranslate i próbuję skonfigurować wielojęzyczne e-maile klientów. Problem polega na tym, że wiadomość e-mail „zakończono zamówienie” jest wysyłana z zaplecza administratora i jest wysyłana w języku, w którym używany jest backend, a nie w języku, w którym zamówienie zostało pierwotnie złożone. przechowuje ustawienia regionalne zamówienia jako pole niestandardowe i podłącza mój kod do mechanizmu wysyłania wiadomości e-mail WooCommerce. To, co muszę teraz zrobić, to dynamicznie zmienić aktualny język na ten zapisany w danych zamówienia, wysłać e-mail i przełączyć go z powrotem. Obecnie staram się wymusić lokalizację w wielu miejscach, ale żadne z nich nie działa. Oto aktualny kod: // pobierz język zamówienia i jego ustawienia regionalne z qTranslate config $order_custom_data = get_post_custom($order_id); $new_locale = $order_custom_data['Ustawienia regionalne klienta'][0]; // zapisz bieżące ustawienia regionalne $old_locale = get_locale(); // ustaw aktualne ustawienia regionalne i wyślij z nimi email active setlocale(LC_ALL, $new_locale); globalna $q_config, $locale; $lokalizacja = $nowa_lokalizacja; $q_config['język'] = substr($nowa_lokalizacja, 0, 2); // wyślij e-mail globalny $wc_cle_wc_email; $wc_cle_wc_email->customer_processing_order($order_id); // przywróć stare ustawienia regionalne $q_config['language'] = substr($old_locale, 0, 2); $lokalizacja = $stara_lokalizacja; setlocale(LC_ALL, $stara_lokalizacja); Dane wyjściowe debugowania pokazują, że bieżące ustawienia regionalne i kolejności są odczytywane poprawnie, a wywołanie `get_locale()` równoległe do `customer_processing_order()` wyświetla ustawienia regionalne kolejności zamiast bieżących. Jednak wiadomość e-mail wygenerowana przez wywołanie `customer_processing_order()` jest tworzona z bieżącymi ciągami językowymi, a nie z tych w języku zamówienia. Jakieś pomysły, jak to obejść?


title: Jak pobrać pierwsze dwa załączniki graficzne?

text:
Pobieram obraz, który jest przesłany do tego posta, pracując z tą funkcją: wp_get_attachment_image_src <?php $images = get_children( array( 'post_parent' => $post->ID, 'post_type' => 'attachment', 'post_mime_type' => 'image', 'orderby' => 'menu_order', 'order' => 'ASC', 'numberposts' => 2 ) ); if ( $images ): $total_images = count( $images ); $obraz = array_shift( $obrazy ); $image_img_tag = wp_get_attachment_image_src( $image->ID, 'pełny'); ?>
 <img src="<?php echo $image_img_tag[0] ?>">
 Jak mogę pobrać pierwsze dwa obrazy przesłane do posta? Myślę, że potrzebuję pomocy z oświadczeniem foreach ... i ograniczę go do dwóch. Próbowałem tego, ale po prostu wydrukował ten sam pierwszy obraz w kółko.. <?php foreach ($obraz jako $obrazy) { echo ""; } ?> JEŚLI wyślę echo `$total_images`, otrzymam poprawną liczbę 2 Dziękujemy za pomoc! Oto wklejanie strony


title: Jak powiększyć obraz proporcjonalnie?

text:
Próbuję powiększyć obrazy suwaków, ale to nie działa. Chcę, żeby były proporcjonalnie większe i przy `szerokości:100%` wyglądają śmiesznie. W porządku, jeśli obraz zostanie przycięty i nie pokazuje całego obrazu. Jakieś sugestie, jak to działa? Znalazłem to w moim function.php, tak naprawdę nie znam linii czarownic, więc zmień? // Ten motyw używa niestandardowego rozmiaru obrazu dla polecanych obrazów add_theme_support('post-thumbnails'); add_image_size('img68', 68, 68, prawda); add_image_size('img100', 100, 90, prawda); add_image_size('img235', 235, 134, prawda); add_image_size('img297', 297, 170, prawda); add_image_size('img515', 515, 300, prawda); add_image_size('img737', 737, 300, prawda); I to jest jedyny kod jaki posiadam dla slidera: <?php /* Nazwa wtyczki: TM Slider Widget (Centrum) Plugin URI: Opis: Ten widżet do wyświetlania Slidera w środkowej (środkowej) części. Autor: Template.my.id Wersja: 1.0 URI autora: Template.my.id Licencja: GPL2 */ // Uruchom widżet nazwy klasy // class TM_Slider_Widget extends WP_Widget { // Konstruktor // function TM_Slider_Widget() { $widget_ops = array ('classname' => 'widget_tm_slider', 'description' => __('Ten widżet do wyświetlania Slidera w środkowej (środkowej) części')); $control_ops = array('width' => 410, 'height' => 360); $this->WP_Widget('tmmyid_slider_box', __('TM Slider Widget (w środku)'), $widget_ops, $control_ops); } // Wyodrębnij argumenty // widżet funkcji( $args, $instance ) { extract($args); $title = apply_filters( 'widget_title', empty($instance['title']) ? '' : $instance['title'], $instance ); $kategoria tm = $instancja['kategoria tm']; $tm_totalpost = $instancja['tm_totalpost']; $tekst = zastosuj_filtry( 'widget_tm_slider_home', $instancja['text'], $instancja ); echo $before_widget; if ( !empty( $title )) { echo $before_title . $tytuł . $po_tytule; } ob_start(); eval('?>'.$text); $text = ob_get_contents(); ob_end_clean(); ?>
<?php echo $instance['filter'] ? wpautop($tekst) : $tekst; ?>
 <?php echo $after_widget; } aktualizacja funkcji( $nowa_instancja, $stara_instancja) { $instancja = $stara_instancja; $instance['title'] = strip_tags($new_instance['title']); $instance['tmcategory'] = strip_tags($new_instance['tmcategory']); $instance['tm_totalpost'] = strip_tags($new_instance['tm_totalpost']); if ( current_user_can('unfiltered_html')) $instance['text'] = $new_instance['text']; else $instance['text'] = stripslashes(wp_filter_post_kses($new_instance['text']) ); $instance['filter'] = isset($new_instance['filter']); zwróć $instancję; } function form( $instance ) { $defaults = array( 'tmcategory' => __(''), 'tm_totalpost' => __('5'), 'text' => __('  ', 'tm_category_text'), ); $instance = wp_parse_args ( (array) $instance, $defaults, array( 'title' => '', 'tmcategory' => '', 'tm_totalpost' => '', 'text' => '' ) ); $tmcategory = strip_tags ($instance['tmcategory']); $tm_totalpost = strip_tags($instance['tm_totalpost']); $text = format_to_edit($instance['text']); ?>
<label for="<? php echo $this->get_field_id('kategoria tm'); ?>"><?php _e('Ostatni suwak według kategorii (oddzielone identyfikatory kategorii przecinkami):'); ?> <input class="widefat" id="<?php echo $this->get_field_id ('kategoria'); ?>" name="<?php echo $this->get_field_name('tmcategory'); ?>" type="tekst" value="<?php echo esc_attr($tmcategory); ?>" />

<label for="<?php echo $this->get_field_id('tm_totalpost'); ?>"><?php _e('Suma postów:'); ?> <input class="widefat" id="<?php echo $this->get_field_id('tm_totalpost'); ?>" name="<?php echo $this->get_field_name('tm_totalpost'); ?>" type="tekst" value="<?php echo esc_attr($tm_totalpost); ?>" />

<label for="<?php echo $this->get_field_id('text'); ?>"><?php _e('PHP Kod (jeśli nie jesteś pewien, nie edytuj poniższego kodu) :'); ?> <textarea class="widefat" rows="16" cols="20" id="<?php echo $this->get_field_id('text'); ?>" name="<?php echo $this->get_field_name('text'); ?>"><?php echo $text; ?></textarea> <?php } } add_action('widgets_init', create_function('', 'return register_widget("TM_Slider_Widget");')); // Link do portfela // add_filter('plugin_row_meta', 'tmmyid_sliderbox_link', 10, 2); function tmmyid_sliderbox_link($links, $file) { if ($file == plugin_basename(__FILE__)) { $portfolio_link = 'Wyświetl portfolio'; $linki[] = $portfolio_link; } return $linki; }


title: Strzelanie do archiwum dat 404, gdy wydobywane są miesiące i dni

text:
Wiem, że widzieliście setki, jeśli nie tysiące 404 pytań. Zapewniam, że zrobiłem wszystko, co w mojej mocy. 1. aktualizacje permalinków 2. użycie /%post_id%/%postname%/ dla struktury 3. pracowałem nad czystą instalacją 3.2 4. brak wtyczek lub dodatkowych funkcji teraz nie wszystkie archiwa są uszkodzone na przykład ten php wp_get_archives( array( ' typ' => 'miesięcznie' ) ); działa dobrze, wynikowa struktura adresu URL to na przykład site.com/blog/date/2011/06/ jednak to nie jest to, co próbuję uzyskać do pracy, co nie działa, to
 <?php $months = $wpdb->get_results("SELECT DISTINCT MONTH(post_date) AS month , YEAR( post_date ) AS year, COUNT( id ) as post_count FROM $wpdb->posts GDZIE post_status = 'publish' i post_date <= now( ) GROUP BY miesiąc , rok ORDER BY post_date DESC"); foreach($miesiące jako $miesiąc) : ?>
<a href="<?php bloginfo('url') ?>/<?php echo $miesiąc->rok; ?>/<?php echo data( "m", mktime(0, 0, 0, $miesiąc->miesiąc, 1, $miesiąc->rok)) ?>"><?php echo date("F", mktime(0, 0, 0, $ miesiąc->miesiąc, 1, $miesiąc->rok)) ?> <?php echo $miesiąc->rok ?> - <?php echo $miesiąc->liczba_postów; if ($miesiąc->liczba_postów> 1 ) { echo " posty"; } else { echo " post"; }?>
 <?php endforeach; ?>
 wynikowa struktura adresu URL to site.com/blog/2011/06/ , bez _date_ , nawet jeśli dodam datę, która niczego nie zmienia, nadal otrzymuję 404, tak, zaktualizowałem moje permalinki i umieściłem je na domyślne, jeśli to robi różnicę, i wracaj i wróć do domyślnych oraz przez menu do marsa, aby pogorszyć sytuację, otrzymuję 404 na drugiej stronie zwykłego wp_get_archives( array( 'type' => 'monthly') ); Czy ktoś może to przetestować, jeszcze jedno, że wydobywane przedmioty to niestandardowe typy postów?


title: Jak sortować posty z wieloma stronami

text: Używam listy rozwijanej do sortowania postów według tytułu, meta_value itp. Jednak funkcja sortowania działa tylko na pierwszej stronie. Druga strona wyświetla domyślną kolejność, zamiast kontynuować kolejność od strony 1. Używam wp-pagenavi do paginacji. Jakieś pomysły, co spowodowałoby ten błąd? Oto link do kodu: http://pastebin.com/AwSmMPtM Bardzo dziękuję.


title: Dlaczego ten kod powoduje nieskończoną pętlę?

text:
Cześć wszystkim, mam tę stronę szablonu, która pobiera post na stronie, a następnie listę postów z kategorii wiadomości. <?php /* * Nazwa szablonu: Wiadomości i informacje */ get_header(); ?>
 <?php if (function_exists('yoast_breadcrumb')) { yoast_breadcrumb('
', '
'); } ?> <?php if (have_posts()) : while (have_posts()) : the_post(); ?>

<?php the_title(); ?>

 <?php the_content(); ?>
 <?php endwhile; endif; ?> <?php if (have_posts()) : while (have_posts()) : the_post(); ?> <?php query_posts('cat=32'); ?>

 <?php endwhile; endif; ?>

Wiadomości i informacje:

 <?php wp_list_pages('hide_empty=0&child_of=26&title_li=&sort_column=menu_order') ; ?>

 <?php get_footer(); ?> Druga pętla wchodzi w nieskończoną pętlę i nie wiem, co robię źle. Z góry dziękuję


title: Kiedy dzielę duży post za pomocą <!--nextpage-->, w jaki sposób wyszukiwanie może zlokalizować użytkowników na właściwej stronie?

text: Mam duży post podzielony z `<!-- nextpage -->`. Termin znajduje się na stronie 50. Kiedy szukam terminu, trafiam na stronę nr 1. **P:** W jaki sposób system może automatycznie przekierować mnie na stronę nr 50? Dziękuję


title: Nietypowy problem z niestandardowym postem 404 (NIE problem z linkiem bezpośrednim)

text: Wygląda na to, że wyczerpałem wszystkie odniesienia na ten temat, ale jeśli jest to duplikat postu, przepraszam. Mam problem polegający na tym, że DOWOLNA niestandardowa strona posta wyświetla zawartość błędu pliku 404.php, niezależnie od metody dostania się tam. Obejmuje to po prostu przejście do czegoś tak podstawowego, jak http://domain.com/?p=123. Zrobiłem, co następuje: * Opróżniono ustawienia permalinków (chociaż nie sądzę, że jest to problem z permalinkami) * Usunąłem .htaccess i odtworzyłem go, przechodząc do ustawień -> permalinki * Specjalnie utworzyłem plik single-[name].php dla dowolnego podany typ * Wyłączono wszystkie wtyczki * Sprawdzono pod kątem konfliktów nazw stron/taksonomii (nadal nie działa nawet z losową nazwą) * Sprawdzono logi serwera pod kątem błędów (brak od rozpoczęcia rozwiązywania problemów) * Przesłano cały motyw do innej instalacji WP Wszystko bezskutecznie. Zredukowałem niestandardową rejestrację postu do tak prostej funkcji, jaką mogę wyczarować: add_action('init', 'init_sample'); function init_sample() { $args = array( 'public' => true, ); register_post_type( 'przykład' , $args ); } Ale ani ta, ani żadna inna kombinacja argumentów nie pomaga. Nawet kliknięcie linku „Wyświetl post” w admin powoduje przejście do strony 404. Mogę jednak bez problemu pobierać niestandardowe posty za pomocą zapytania. Używam WP v3.2.1. Gdybym miał zgadywać, powiedziałbym, że jest coś innego w tym temacie, który coś psuje, ale nie mam pojęcia, gdzie się tego dowiedzieć – czy ktoś mógłby podać jakieś sugestie, gdzie nawet szukać, aby rozwiązać ten problem?


title: Używanie interfejsu Rewrite API do konstruowania adresu URL RESTful

text: Próbuję wygenerować reguły ponownego zapisu dla interfejsu API RESTful. Chcę tylko zobaczyć, czy istnieje lepszy sposób, aby to zadziałało, niż konieczność wypisywania każdej możliwej kombinacji przepisywania. Ok, więc mam 4 zmienne zapytania do uwzględnienia w adresie URL * Wskaźnik * Kraj * Odpowiedź * Ankieta Podstawowym adresem URL będzie www.example.com/some-page/ Kolejność 4 zmiennych będzie spójna, ale niektóre zmienne zapytania są opcjonalny. Mogę więc mieć... /indicator/{wartość wskaźnika}/kraj/{wartość kraju}/odpowiedź/{wartość odpowiedzi}/ankieta/{wartość ankiety}/ lub...(brak /odpowiedzi/) /wskaźnik/{ wartość wskaźnika}/kraj/{wartość kraju}/ankieta/{wartość ankiety}/ lub... /indicator/{wartość wskaźnika}/kraj/{wartość kraju}/ Czy jest lepszy sposób na osiągnięcie tego niż filtrowanie `rewrite_rules_array ` i dodanie tablicy moich reguł przepisywania ręcznie utworzonych? Czy funkcja „add_rewrite_endpoint()” rewrite_endpoint lub „add_rewrite_tag()” byłaby dla mnie użyteczna?


title: Czy można rozgrupować pola niestandardowe?

text: Używam wielu pól niestandardowych, aby używać Wordpressa jak CMS, poza prostymi postami i meta postów. Obszar administracyjny do dodawania nowych postów ma niewiele "widgetowanych" ruchomych obszarów, takich jak na przykład pola "kategorie", "publikuj" i "znaczniki". W przypadku pól niestandardowych wszystkie są zgrupowane pod jednym „widżetem” o tej samej nazwie. Czy istnieje sposób na rozbicie pól niestandardowych na ich własne „widżety”, aby zmienić rozmieszczenie obszaru administracyjnego?


title: Dodaj kilka pól do tabeli wp_posts

text: Muszę rozszerzyć niektóre tabele wp (wp_posts, wp_comments, wp_users), aby przechowywać dodatkowe pola. Nie mogę używać metadanych, ponieważ muszę wysyłać zapytania bezpośrednio przez MySQL. Potrzebuję pomocy, aby wybrać, czy lepiej rozszerzyć oryginalną tabelę, czy zdefiniować dodatkową z tymi polami, z relacją 1-1 do oryginalnej. Ten drugi przypadek będzie wymagał dodatkowego JOIN. Dziękuję. eV


title: Trzymaj przyklejone posty poza zapytaniem, chyba że zawierają polecany obraz

text: Mam uruchomione zapytanie, które zapobiega pojawianiu się postów bez różnych kryteriów, jednym z nich jest konieczność posiadania wyróżnionego obrazu. Posty przyklejone wydają się jednak trafiać do zapytania niezależnie od tego. Jak mogę to osiągnąć? $args = array( 'posts_per_page' => $articles_no, 'meta_key' => '_thumbnail_id', 'post__not_in' => $a_empty_titles, // usuń formaty postów zgodnie z opcjami motywu (używając $ukryj z góry) 'tax_query' = > array( array( 'taxonomy' => 'post_format', 'field' => 'slug', 'operator' => 'NIE W', 'terms' => $hide ) ) ); $fp_query = nowe WP_Query( $args ); ?> <ul class="thumbnails"> <?php $thumbnail_span = "span4"; if( $fp_query->have_posts() ) : while( $fp_query->have_posts() ) : $fp_query->the_post(); ?


title: Woocommerce Dodaj odmianę produktu do koszyka z niestandardowego linku

text: Próbuję dodać odmianę produktu do mojego koszyka bezpośrednio przez link. Ustawiam Variation_id z ciągiem zapytania. O ile wiem, wysyłam dane dokładnie w taki sam sposób, jak robi to domyślna odmiana produktu. Oto kod wewnątrz mojej strony z jednym produktem: <a href="<?php echo esc_url( $product->add_to_cart_url() ); ?>&variation_id=262" class="rounded-rect-button add-to-cart ">Dodaj do koszyka I odwrotnie, prosty produkt działa dobrze. W panelu administracyjnym ustawiłem ceny dla moich odmian produktów. Nie wiem, dlaczego nie jest to tak proste, jak przesyłanie danych. Każda pomoc byłaby bardzo mile widziana.


title: Używanie przesunięcia w niestandardowym zapytaniu typu post

text:
Używam następującego zapytania dla niestandardowego typu postu: <?php $posts = get_posts(array( 'numberposts' => -1, 'offset' => 20, 'post_type' => 'faqs' )); if($posts) { foreach($posts as $post) { echo '

ID) .' ">" . get_the_title($post->ID) . '

'; /*
ID) . '">' . get_the_title($post->ID) . '

' . get_the_excerpt($post->ID) . '

'; */ } } wp_reset_query(); ?> Czy istnieje powód, dla którego parametr offset nie działa? Może muszę napisać zupełnie inne zapytanie?


title: Numeracja listy obrazów w Galerii

text: Dodając obrazy w poście z shortcodem galerii, chcę wyświetlić numer obrazu jako tytuł obrazu, np. jeśli w galerii są 3 obrazy i są wyświetlane jako lista, nad każdym obrazem powinien znajdować się numer seryjny. Pokazane jako ![tutaj wprowadź opis obrazu](http://i.stack.imgur.com/T11Dg.jpg) Mogę to później ustawić za pomocą wbudowanego css. Próbowałem dużo w `media.php`, ale bez powodzenia.


title: Gdzie w WP mogę sprawdzić historię lub dziennik aktualizacji wtyczek itp.?

text: Muszę dowiedzieć się, co się stało w określonym czasie, gdy niektórzy z moich administratorów dokonali aktualizacji wtyczek itp. Muszę więc sprawdzić w adminie dziennik zmian, aktualizacji itp. Gdzie mogę to znaleźć w WP admin?


title: Jak obniżyć wersję wtyczki?

text: Zainstalowałem wtyczkę, ale powoduje to problem z funkcją get_the_excerpt() w moim motywie. Więc muszę obniżyć wersję tej wtyczki. Jak to zrobić?


title: Pobieranie term_id dla nowo utworzonego lub edytowanego terminu

text: Zaczynam swoją pierwszą przygodę z tworzeniem wtyczek i dość szybko się pomyliłem. Próbuję stworzyć prostą wtyczkę, która przechowuje kolory szesnastkowe względem terminów, dzięki czemu można przypisać kolor do tagu lub kategorii, a następnie użyć go w motywie. Nie mogę się dowiedzieć, jak uzyskać term_id nowo utworzonego lub edytowanego terminu. Przykręciłem formularz do „edit_tag_form” za pomocą selektora kolorów i mogę uzyskać dostęp do tych wartości za pośrednictwem $_POST, ale jeśli jest to nowo utworzony tag, nie widzę, jak mój kod może poznać identyfikator nowo utworzonego. Muszę znać term_id, aby móc połączyć go z kolorem szesnastkowym i zapisać go w wp_options. Używam haka akcji 'edited_term'. Myślę, że dla edytowanych istniejących terminów mógłbym uzyskać tag_ID z ciągu zapytania, ale chcę mieć możliwość natychmiastowego przypisywania kolorów do nowo utworzonych tagów/kategorii.


title: Prześlij obraz do wordpress

text:
Jestem początkującym serwisem piszącym i korzystam z WordPressa i piszę wtyczkę, która obejmuje stronę profilu (nie avatar, bo to pole, które zaimplementowałem, użytkownik może wgrać obrazek, cokolwiek, np. Zdjęcie moich znajomych) i dodałem pole upload, które przegląda plik z katalogu i zapisz je w bazie danych za pomocą `wp_handle_upload` WordPressa. Uruchomiłem swój kod, a obraz nie pokazuje, że nie wiem, która część mojego kodu (poniżej) jest nieprawidłowa. Co powinienem zrobić, aby rozwiązać ten problem! Oto mój kod, który zmodyfikowałem na podstawie tej dyskusji <?php add_action( 'user_edit_form_tag','make_uploadable_form'); function make_uploadable_form() { echo ' enctype="multipart/form-data"'; } ?> ======Edytowany============== Oto kod HTML <?php add_action( 'show_user_profile', 'UploadField' ); add_action( 'edit_user_profile', 'UploadField' ); function UploadField( $user ) { if ( !current_user_can( 'edit_user')) return false; $prfile_image_id = get_user_meta($user->ID,'profile_photo',true); $profile_image = wp_get_attachment_image($profile_image_id,"pełny"); if(!empty($profile_image)){ echo $profile_image; } else{ ?>
Dodatkowe informacje o profilu

 Prześlij	  <input name="profile_photo" type="file" id="profile_photo" value="" />
 <?php } TUTAJ JEST PRZESYŁANIE PLIKU UCHWYTU: add_action( 'personal_options_update', ' save_user_custom' ); add_action( 'edit_user_profile_update', 'save_user_custom' ); function save_user_custom($user_id){ if($user_id == false) return false; // Jeśli pole przesyłania zawiera plik if(isset($_FILES['profile_photo'])){ if(!function_exists('wp_handle_upload')) require_once(ABSPATH.'wp-admin/includes/file.php' ); // Pobierz typ przesłanego pliku. Jest to zwracane jako "typ/rozszerzenie" $arr_file_type = wp_check_filetype(basename($_FILES['profile_photo']['name'])); $uploaded_file_type = $arr_file_type['typ']; // Ustaw tablicę zawierającą listę dopuszczalnych formatów $allowed_file_types = array('image/jpg','image/jpeg','image/gif','image/png'); // Jeśli przesłany plik ma prawidłowy format if(in_array($uploaded_file_type, $allowed_file_types)) { // Tablica opcji dla funkcji wp_handle_upload. 'test_upload' => false $upload_overrides = array( 'test_form' => false ); // Obsłuż przesyłanie za pomocą funkcji WP wp_handle_upload. Pobiera wysłany plik i tablicę opcji $uploaded_file = wp_handle_upload($_FILES['profile_photo'], $upload_overrides); // Jeśli wywołanie wp_handle_upload zwróciło ścieżkę lokalną do obrazu if(isset($uploaded_file['file'])) { // Funkcja wp_insert_attachment wymaga dosłownej ścieżki systemowej, która została przekazana z powrotem z wp_handle_upload $file_name_and_location = $uploaded_file[ 'plik']; // Wygeneruj tytuł dla obrazu, który będzie używany w bibliotece mediów $file_title_for_media_library = 'Twój tytuł tutaj'; // Ustaw tablicę opcji, aby dodać ten plik jako załącznik $attachment = array( 'post_mime_type' => $uploaded_file_type, 'post_title' => 'Przesłany obraz' . addslashes($file_title_for_media_library), 'post_content' => '', 'post_status' => 'dziedziczy' ); // Uruchom funkcję wp_insert_attachment. Spowoduje to dodanie pliku do biblioteki multimediów i wygenerowanie miniatur. Jeśli chcesz dołączyć ten obraz do posta, możesz przekazać identyfikator posta jako trzecią param i to magicznie by się stało. $attach_id = wp_insert_attachment($attachment, $file_name_and_location ); require_once(ABSPATH . "wp-admin" . '/includes/image.php'); $attach_data = wp_generate_attachment_metadata ($attach_id, $file_name_and_location ); wp_update_attachment_metadata ($attach_id, $attach_data); update_user_meta( $user_id, 'profile_photo', $attach_id ); } } } } ?>


title: Prosty przykład aktualizacji informacji o użytkowniku z interfejsu

text:
Chcę dać użytkownikowi możliwość aktualizowania swojego pseudonimu z interfejsu użytkownika za pomocą `wp_update_user` i shortcode. Poniższy kod działa. add_shortcode('profil-użytkownika', 'get_current_user_prof'); funkcja get_current_user_prof() { global $current_user; get_currentuserinfo(); if(is_user_logged_in()) { $tableuserinf = "<metoda formularza='post' action='#'>

"; $tableuserinf .= "
Pseudonim:	<input type='text' name='fepusernick' value='". $bieżący_użytkownik->pseudonim ."'/>
"; $tableuserinf .= "

<button>Prześlij</button></form>"; $identyfikator_użytkownika = 1; $nick = $_POST['fepusernick']; wp_update_user( array ( 'ID' => $user_id, 'nickname' => $nicksname) ) ; return $tableuserinf; } } Jedynym problemem z powyższym kodem jest jego pole pokazujące poprzednią wartość bazy danych po udanej aktualizacji. I pobierze dane z bazy danych dopiero po odświeżeniu strony. To zmyli użytkownika. Jak rozwiązać ten problem?


title: błąd krytyczny get_page_permastruct()

text: Otrzymuję następujący błąd „Błąd krytyczny: Wywołanie funkcji członkowskiej get_page_permastruct() /link-template.php w wierszu 276”, gdy wywołuję konstruktor klasy in „wp_insert_post($new_post);”. add_action( 'plugins_loaded', array ( 'test', 'init' ) ); class test{ public static function init() { new self; } //Konstruktor funkcji administratora parsera __construct(){ global $wpdb; $to->db = $wpdb; if ($_POST['action'] == 'add-page'){ add_action( 'plugins_loaded', array ( $this, 'add_newpage' ) ); $this->add_newpage(); } public function add_newpage(){ $new_post = array( 'post_title' => $_POST['page-name'], 'post_content' => '', 'post_status' => 'publish', 'post_type' => ' strona' ); $post_id = wp_insert_post($nowy_post); $newtarget = $this->db->insert( 'wp_test_table', array( 'post_id' => $post_id, 'slug' => 'test' ), array( '%d', '%s') ); } }


title: Jak programowo zminimalizować menu pulpitu nawigacyjnego WP?

text: Chciałbym programowo (za pomocą js lub php, ale wyobrażam sobie, że byłoby to prostsze w js) ukryć menu administracyjne pulpitu nawigacyjnego, korzystając z tej samej funkcji, która jest już wbudowana. Chcę tylko, gdy użytkownik kliknie niestandardowy link w desce rozdzielczej menu administratora zostanie zwinięte, dzięki czemu mogę uzyskać więcej miejsca na ekranie. Czy ktoś wie jak to zrobić? Szukałem przez kilka dni i mogę znaleźć tylko, jak całkowicie usunąć menu, co nie jest tym, czego chcę. Mógłbym to zrobić za pomocą niestandardowego skryptu js, jednak wolę po prostu dodać dodatkową obsługę zdarzeń do bieżącej funkcji js, która ukrywa menu. Dzięki za pomoc.


title: Dodawanie nowego elementu nadrzędnego do paska administracyjnego

text: Widzę, że zadano wiele pytań dotyczących dodawania czegoś do paska administracyjnego, ale nadal nie mogę uzyskać nowego elementu paska administracyjnego „nadrzędnego”, aby działały zaawansowane pola niestandardowe. Pasek administratora nie wyświetla się, jeśli dodam to do mojego functions.php: function my_theme_admin_bar_render() { $wp_admin_bar->add_menu( array( 'parent' => 'Zaawansowane pola niestandardowe', 'id' => 'acf' , 'title' => __('Zaawansowane pola niestandardowe'), 'href' => admin_url( 'edit.php?post_type=acf') ) ); } add_action( 'wp_before_admin_bar_render', 'my_theme_admin_bar_render' ); Jak mogę uruchomić ten nowy element paska administracyjnego?


title: Czy mogę używać motywów wordpress bez wordpress?

text: Nie znalazłem odpowiedzi na moje pytanie, więc postanowiłem zapytać tutaj, więc: Czy mogę używać motywów wordpress (na przykład: Twenty Twelve) bez używania wordpress? Bardzo podoba mi się ten motyw, ale nie chcę używać wordpressa. **AKTUALIZACJA** Nie potrzebuję funkcjonalności motywu, a jedynie layout, kolory (co widać, (html/css)) i chcę użyć tego motywu (oczywiście ze zmodyfikowanym kodem) we własnej aplikacji .


title: Różne zapytania do bazy danych w function.php za pomocą mysqli

text: Próbuję połączyć się z bazą danych w function.php za pomocą mysqli. Wydaje się, że kod działa dobrze, gdy nie znajduje się w osobnym pliku php, a nie w wordpressie. Ale kiedy uruchamiam go na wordpressie, otrzymuję „Połączenie nie powiodło się: nie można nawiązać połączenia, ponieważ maszyna docelowa aktywnie go odrzuciła”. Nie jestem pewien, czy wordpress temu zapobiega. Czy ktoś może mnie oświecić w tym problemie? W razie potrzeby kod znajduje się poniżej. require_once($_SERVER['DOCUMENT_ROOT'] . '/forum/config.php'); $mysqli = nowe mysqli($dbhost,$dbuser,$dbpasswd,$dbname); if ($mysqli->connect_errno) { printf("Połączenie nie powiodło się: %s\n", $mysqli->connect_error); Wyjście(); } $data = '<?xml version="1.0"?> <!-- informacje o składzie --> <squad nick="DC"> <name>Psa firma</name> <email>nie dotyczy@gmail. com</email> <web> http://www.dog-company.com</web> <picture>sqd_logo.paa</picture> <title>Firma dla psów</title> <!-- początek listy członków /info --> <!-- Zaktualizowano użytkowników i zaktualizowano do xml na serwerze-->'; $query = 'WYBIERZ * Z '.$table_prefix.'users u LEWE JOIN '.$table_prefix.'profile_fields_data f ON (u.user_id = f.user_id) LEWE JOIN '.$table_prefix.'user_group g ON (u.user_id) = g.user_id) GDZIE g.group_id = 9'; if ($result = $mysqli->query($query)) { /* pobierz tablicę asocjacyjną */ while ($row = $result->fetch_assoc()) { if($row['pf_xml_arma_id'] != "" ){ $data .= '<identyfikator członka="'.$row['pf_xml_arma_id'].'" nick="'.$row['pf_xml_player_name'].'">'; $nazwa = ($row['pf_xml_name'] == '' ? "N/A" : $row['pf_xml_name']); $email = ($row['pf_xml_email'] == '' ? "N/A" : $row['pf_xml_email']); $para = ($row['pf_xml_steam_user'] == '' ? "N/A" : "Para: ".$row['pf_xml_steam_user']); $quote = ($row['pf_xml_remark'] == '' ? "N/A" : $row['pf_xml_remark']); $data .= '<name>'.$name.'</name> <email>'.$email.'</email> <icq>'.$steam.'</icq> <remark>'.$ cytat.'</remark>'; $dane .= '</member>'; } } /* wolny zestaw wyników */ $result->free(); } /* zamknij połączenie */ $mysqli->close(); $data .= '</squad>'; zwróć $dane; Dziękuję za poświęcony czas, UPDATE Wygląda na to, że moje $query nie pobierało $table_prefix z mojego pliku konfiguracyjnego. Nie jestem jednak pewien, dlaczego nie ma do niego dostępu. Ktokolwiek?


title: Połącz zapytanie i wybierz bazę danych, aby utworzyć pętlę katalogów

text: Mam pętlę zapytań na mojej stronie, której używam, która wyświetla wszystkich użytkowników na stronie z wypełnionymi określonymi polami niestandardowymi. Działa to jednak dobrze, muszę również zapytać tych użytkowników o ich poziom członkostwa (utworzony przez wtyczkę Paid Membership Pro) i wymienić tylko tych, którzy mają określone członkostwo. Fragment kodu, który muszę wybrać w bazie danych, jest następujący -- $member_ids = $wpdb->get_col("SELECT user_id FROM $wpdb->memberships_users WHERE Membership_id = '1'"); $level1users = get_users(array("include"=>$member_ids)); A kod, którego używam do utworzenia katalogu autora to -- <?php $blogusers = get_users (array( 'meta_query' => array( 'relation' => 'AND', array( 'key' => 'custom_field_24' ) , array( 'key' => 'custom_field_39', 'value' => 'tak' ), array( 'key' => 'first_name')) )); foreach ($blogusers jako $user) : ?> //moje divs <?php endforeach; ?> Jak mogę połączyć te 2 kody?


title: Format postu wideo, dodatkowa treść przerywa osadzanie wideo

text:
Korzystam z **content-video.php**, aby wyświetlić najnowszy post wideo na mojej stronie głównej. Uwzględnienie pokazuje tylko wideo z postu, a nie resztę treści, co działa dobrze. Mój problem polega na tym, że jeśli dodam jakąkolwiek treść (np. - tekst, inny link, itp.) po linku do wideo w poście, zepsuje to umieszczenie mojego wideo na stronie głównej. Wideo i tekst przed i po wyświetlają się dobrze w rzeczywistym poście. Oto kod, który mam dla **content-video.php** <?php if(strlen( get_the_title() ) >0 ): ?>
<a href="<?php the_permalink(); ?> "><?php tytuł_(); ?>
 <?php endif; ?> <?php $parsedUrl = parse_url(get_the_content()); $embed = $parsedUrl['zapytanie']; parse_str($osadzone, $out); $embedUrl = $out['v']; ?> <iframe width="385" height="217" src="http://www.youtube.com/embed/<?php echo $embedUrl; ?>" frameborder="0" allowfullscreen> A oto kod pętli, w którym umieszczam go na stronie głównej:  <?php $args = array( 'post_type' => 'post', // jeśli typ posta to post 'posts_per_page' => 1, 'tax_query' => array( array( 'taxonomy' => 'post_format', 'field' => 'slug', 'terms' => 'post-format-video' )) ) ; $my_query = nowe WP_Query( $args ); ?> <?php while ($my_query->have_posts()) : $my_query->the_post(); ?>
 <?php get_template_part( 'treść', 'wideo' ); ?> więcej filmów
 <?php endwhile; ?> Czy ktoś może zauważyć, co robię źle, czy też muszę osadzić film w inny sposób?! Dzięki za wszelką pomoc.


title: Nazwa użytkownika z e-maila

text: Które pliki muszę edytować, aby uzyskać kontrolę nad danymi $_POST przesłanymi przez formularz rejestracyjny? Chcę rozbić $_POST['email'] i zbudować z tego nazwę użytkownika. Po prostu chcę, aby ludzie mogli się rejestrować tylko za pomocą adresu e-mail i hasła. Czy mógłbyś mi w tym pomóc?


title: Używanie wielu przycisków Prześlij do uruchamiania niestandardowych funkcji php

text: Być może podchodzę do tego całkowicie w niewłaściwy sposób, ale wytrzymuj mnie… Mam długą listę gości, która jest automatycznie wypełniana przy użyciu tabeli „foreach”. Chciałbym umieścić przycisk „Nie pokazuj się” na tej liście gości, aby gospodarz wydarzenia nie będąc administratorem mógł kliknąć (po stronie klienta) „Nie pokazuj się” i zaktualizować meta biletu (niestandardowy post) do stanu: „nie pokazu” A wiele przykładów, które znalazłem, oznacza utworzenie nowej strony .php dla przycisku przesyłania, do którego będzie można linkować i uruchomić kod [oczywiście, ponieważ jest to język po stronie serwera] - pierwszym problemem jest to, że po kliknięciu przycisku przesyłania jest przechodzi na pustą stronę (nie ma prawdziwego wyjścia HTML), zamiast wracać do wydarzenia ... To nie jest taki duży problem - przypuszczam, że mogę umieścić przekierowanie, ale wydaje się to trochę niezgrabne. Drugim problemem jest również to, że wiele z tych przykładów nie bierze pod uwagę A) Wiele przycisków wysyłania, które muszą być tworzone automatycznie B) Inny kod PHP, który ma być wyzwalany dla każdego z nich... Oto lista tego, co muszę zrobić poniżej: <form onsubmit="return Confirm('Czy chcesz oznaczyć <?php echo $FullName ?> jako 'Nie pokazuj' - nie można tego cofnąć, chyba że jesteś administratorem');" method="post" action="<?php HELP ?>"> <input name="NiePokaż<?php echo $IDużytkownika?>" type="prześlij" value="Nie Pokazuj" class="przycisk" /> / /$IDuser to ich identyfikator użytkownika, który nadaje wartościom coś innego na stronie. Mogą to być również numery biletów [post]? </form> Teraz po stronie serwera potrzebuję do uruchomienia czegoś takiego: $tixID = $ticket['id']; //Pobiera bilet [niestandardowy post] numer identyfikacyjny $StateKey = state; //To jest meta_klucz, który wymaga zmiany $NoShowing = noshow; //To jest to, na co musi się zmienić. update_post_meta($tixID , $StateKey , $NoShowing ); #To jest kod do zmiany stanu: na No Show ?> Więc doszedłem do wniosku, że muszę użyć czegoś w stylu if(isset($_POST['SUBMIT-BUTTON'])) { jakaś_funkcja_nazwana_tutaj(); } Ale to jest naprawione i szukamy określonej nazwy - Byłoby fizycznie niemożliwe dla mnie wpisanie różnych nazw przycisków przesyłania, ponieważ zmieniałoby to pojedyncze bilety - z których około 6000 zostało już sprzedanych na stronie.. Wywoływana funkcja musiałaby być unikalna dla przycisku, który ją wywołał. Każde świecące światło byłoby świetne, ponieważ czuję, że kręcę się w kółko z niektórymi z tych wpisów na blogu. EDIT: Przepraszamy - za wyjaśnienie. To, co muszę zrobić, to... 1. Trigger - Użytkownik wciska jeden przycisk z listy przycisków po stronie klienta. Jest generowany w tabeli za pomocą php i foreach, który zawiera listę biletów zakupionych na to wydarzenie. `<input name="noshow<?php echo $ticketID ?>" type="submit" value="No Show" class="button" />` 2. Akcja - Każdy konkretny przycisk odpowiada określonemu biletowi, gdy przycisk jest kliknięty dla tego biletu, uruchamia kod, aby edytować dane meta wpisu biletu, po stronie serwera. `update_post_meta($ticketID , 'state' , 'noshow' );` To aktualizuje klucz `State:` do `noshow` 3. Wynik — strona jest ponownie ładowana i pozostajesz na tej samej stronie wydarzenia. Oto wizualny przykład zrzutu ekranu ![Przykład scenariusza zrzutu ekranu](http://i.stack.imgur.com/GqTus.png)


title: Usuwanie wszystkich moich zakodowanych adresów URL za pomocą get_site_url()

text: W moich plikach php chciałbym usunąć wszystkie moje zakodowane adresy URL (np.: http://mysite.com/) i zastąpić je funkcją `get_site_url()`. Mój problem polega na kodzie php jednej z moich funkcji (w functions.php), która dodaje atrybut `_blank` do wszystkich linków mojej witryny z wyjątkiem wewnętrznych adresów URL. function autoblank($text) { $return = str_replace('href=', 'target="_blank" href=', $text); $return = str_replace( 'target="_blank" href="http://localhost.com/test/', 'href="http://localhost.com/test/', $return ); $return = str_replace('target="_blank" href="#', 'href="#', $return); return $powrót; } add_filter('the_content', 'autoblank'); add_filter('comment_text', 'autoblank'); Jak mogę zastąpić `http://localhost.com/test/` używając `get_site_url()`, aby ten kod działał na każdej stronie? (nie tylko `http://localhost.com/test/` )


title: Błąd bazy danych WP dla komentarzy_popup_link()

text:
Używam funkcji `comments_popup_link()`, aby pokazać liczbę komentarzy dla każdego posta w pętli. <?php if (have_posts()) : while (have_posts()) : the_post(); ?> <?php if ( get_post_meta($post->ID, 'wartość_kciuka', prawda) ) : ?> //coś <?php else: ?> //coś innego <?php endif; ?>
<a href="<?php the_permalink() ?>" title="<?php the_title(); ?>" rel="zakładka"><?php the_title(); ?>
 <?php the_content(__('Czytaj więcej'));?>
 <?php the_time('F j, Y'); ?>
Kategoria: <?php kategoria_(', '); ?>

<?php the_tags(); ?>

<?php comments_popup_link('Postaw komentarz', '1 komentarz', '% komentarzy'); ?>

 <?php endwhile; ?> <?php $wpdb->show_errors(); $wpdb->print_error(); ?> <?php else: ?>
Wystąpił błąd.
 <?php $wpdb->show_errors(); ?> <?php $wpdb->print_error(); ?>
 <?php endif; ?> Wszystko wyświetla się dobrze, ale pojawia się > Błąd bazy danych WordPress: [] SELECT * FROM wp_comments WHERE comment_post_ID > = 216 AND comment_approved = '1' ORDER BY comment_date_gmt DESC Jestem tylko ciekawa, dlaczego to rozumiem..


title: Wp_deregister_script() nie działa

text: Gdzieś w motywie nadrzędnym, dla którego tworzę motyw potomny, wykonywany jest następujący wiersz: wp_enqueue_script('quovolver', get_template_directory_uri() . '/js/jquery.quovolver.js','','',true) ; Chcę usunąć ten skrypt, więc dodałem na końcu "footer.php": wp_deregister_script('quovolver'); Jednak to nie działa, ponieważ skrypt jest nadal wywoływany. Dlaczego?


title: .htaccess w wp-admin tworzy pętlę przekierowania

text: Zdecydowałem się skorzystać z porady ochrony katalogu `/wp-admin` za pomocą .htaccess na stronie, która jest ciągle hackowana. Za każdym razem, gdy przesyłam .htaccess do `/wp-admin`, moja przeglądarka mówi, że `/wp-admin` ma pętlę przekierowania. To jest `/wp-admin/.htaccess`: > > PlikUwierzytelniania /.../.htpasswd > Typ Auth Basic > Nazwa Auth „z ograniczeniami” > Odmów zamówienia, Zezwól > Odmów wszystkim > Wymagaj prawidłowego użytkownika > Zadbaj o dowolny > Serwer kontroler przekierowań mówi, że istnieje przekierowanie **302 (przeniesione tymczasowo)** z `/wp-admin` do `/wp-admin` Jeśli usunę `/wp-admin/.htaccess`, kontroler przekierowań mówi, że nadal istnieje przekierowanie 302 z /wp-admin, ale teraz jest to `/wp-login.php?redirect_to=http%3A%2F%2Fwww.example.com%2Fwp-admin%2F&reauth=1` Pamiętaj o przekierowaniu serwera program sprawdzający nie jest zalogowany do Wordpressa. Dlaczego obecność `/wp-admin/.htaccess` powoduje, że `/wp-admin` przekierowuje do samego siebie? Dziękuję. PS - Używam również `Better WP Security`, ale nie spowodowało to żadnych zmian w `/.htaccess` strony pod względem `/wp-admin`. czyli nie maskowałem `/wp-admin`


title: zmienić the_content obrazy dla różnych rozmiarów (komputer stacjonarny, tablet, telefon komórkowy)?

text: To może być skomplikowane pytanie, więc postaram się je jak najprościej wyjaśnić. Mam trzy rozmiary obrazów w moim poście (miniaturka, średni, duży, 640px, mały) i chciałbym zmienić rozmiar w zależności od rozmiaru przeglądarki. Zastanawiałem się nad sposobem na załadowanie trzech obrazów (małe, średnie, 640px) i użycie CSS do ukrywania i pokazywania obrazów w oparciu o rozmiar ekranu. Czy jest na to sposób? Jestem również otwarty na inne propozycje. Dzięki, Gregory S.


title: Jak mogę zmienić podpowiedź w the_category?

text: Moje użycie the_category działa dobrze, ale chcę zmienić podpowiedź, która mówi „Wyświetl wszystkie posty w (nazwa kategorii)”. Jak mogę zmienić tę podpowiedź? Myślę, że to może być coś podobnego do tego. Dziękuję Ci