title: Niestandardowe Meta Boxes: Przechowuj dwie wartości w jednym powtarzalnym polu

text:
Próbuję stworzyć niestandardowe pole meta, w którym użytkownik może dodawać pola w razie potrzeby. Śledziłem ten samouczek: http://wp.tutsplus.com/tutorials/reusable-custom-meta-boxes-part-1-intro-and-basic-fields/ Chciałbym rozwinąć ten samouczek i utworzyć pole powtarzalne co pozwala na dwa wejścia. Na przykład: nazwa i adres URL. Jak mogę to osiągnąć? Znalazłem tutaj inne pytanie: Utwórz więcej Meta Boxów w razie potrzeby Udało mi się zintegrować przykład meta box z moim niestandardowym typem postu, ale nie mogłem wymyślić, jak wyprowadzić wartości meta do mojego motywu. Oto kod, z którym pracuję: /*---------------------------*/ /* Zdefiniuj pola metaboksu /*---- -----------------------*/ $prefiks = 'tz_'; $custom_downloads = array( 'id' => 'niestandardowe-pobrania', 'title' => __('Pobieranie niestandardowe (Beta)'), 'page' => 'obsługiwane kategorie', 'context' => ' normal', 'priority' => 'high', 'fields' => array( array( 'name' => __('Dodaj pobrane produkty', 'framework'), 'desc' => __('To pole meta jest w fazie rozwoju', 'framework'), 'id' => $prefix . 'custom-downloads', 'type' => 'text', 'std' => '' ), ) ); /*-------------------------------------*/ /* Dodaj Meta Box do ekranu CPT / *-------------------------------------*/ function tz_add_box() { global $custom_downloads; add_meta_box($custom_downloads['id'], $custom_downloads['title'], 'tz_show_box_custom_dwnld', $custom_downloads['page'], $custom_downloads['context'], $custom_downloads['priority']); } } add_action('admin_menu', 'tz_add_box'); /*------------------------------------------*/ /* Funkcja oddzwaniania /show fields in meta box Pobierane bezpośrednio z: http://wordpress.stackexchange.com/questions/19838/create-more-meta-boxes-as-needed /*----------- -------------------------------*/ function tz_show_box_custom_dwnld() { global $custom_downloads, $post; // Użyj wartości nonce do weryfikacji echo '<input type="hidden" name="tz_meta_box_nonce" value="', wp_create_nonce(basename(__FILE__)), '" />'; ?>
 <?php //pobierz zapisaną meta jako tablicę $songs = get_post_meta($post->ID,'songs',true); $c = 0; if ( count( $songs ) > 0 ) { foreach( $songs as $track ) { if ( isset( $track['title'] ) || isset( $track['track'] ) ) { printf( '
Tytuł utworu <input type="text" name="piosenki[%1$s][title]" value="%2$s" /> -- Numer utworu: <input type="text" name=" utwory[%1$s][track]" value="%3$s" />%4$s
', $c, $track[' tytuł'], $track['track'], __( 'Usuń ścieżkę' ) ); $c = $c +1; } } } ?>  <?php _e('Dodaj utwory'); ?> <skrypt> var $ =jQuery.noConflict(); $(document).ready(function() { var count = <?php echo $c; ?>; $(".add").click(function() { count = count + 1; $('#tutaj' ).append('
 Tytuł utworu <input type="text" name="songs['+count+'][title]" value="" /> -- Numer utworu : <input type="text" name ="songs['+count+'][track]" value="" />Usuń utwór
' ); return false; }); $(". usuń").live('kliknij', function() { $(this).parent().remove(); }); }); </script>
 <?php } /*------------------------------------ -*/ /* Zapisz dane, gdy post jest edytowany /*------------------------------------- */ function tz_save_data($post_id) { global $meta_box, $meta_box_video, $meta_box_video_page, $meta_box_product_tabs, $meta_deployments, $meta_features, $meta_downloads; // zweryfikuj numer jednorazowy if (!wp_verify_nonce($_POST['tz_meta_box_nonce'], basename(__FILE__))) { return $post_id; } // sprawdź autozapis if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) { return $post_id; } // sprawdź uprawnienia if ('page' == $_POST['post_type']) { if (!current_user_can('edit_page', $post_id)) { return $post_id; } } elseif (!current_user_can('edit_post', $post_id)) { return $post_id; } $piosenki = $_POST['piosenki']; update_post_meta($post_id,'piosenki',$piosenki); } add_action('save_post', 'tz_save_data'); Korzystając z powyższego kodu, jestem w stanie wygenerować dynamiczne metabox na moim ekranie edycji CPT i mogę pomyślnie zapisać dane w polach. Trochę się wstydzę przyznać, ale nie wiem, jak wyświetlić informacje z tych pól w moim motywie. Udało mi się pomyślnie wyświetlić inne niestandardowe informacje meta przechowywane w innych polach przy użyciu <?php $post_meta_data = get_post_custom($post->ID); ?> <?php $custom_features = unserialize($post_meta_data['tz_features-repeat'][0]); ?> <?php echo '
'; foreach ($custom_deployments as $string) { echo '
'.$string.'
'; } echo '
'; ?> Każda pomoc byłaby bardzo mile widziana!


title: Zapisywanie danych formularza frontendowego w wordpressie

text:
Mam formularz użytkownika typu front-end, np. * Tytuł * Prześlij obraz * Rozwijana kategoria * Opis * Tag Teraz, gdy użytkownik wypełni formularz i naciśnie przycisk publikowania z poziomu front-endu..... na zapleczu a post jest tworzony z tytułem i wszystkimi szczegółami, jestem w stanie stworzyć post z tytułem i opisem, ale nie mogę zapisać kategorii, tagu. i jak dodać kategorię i tagi do kolumn ![tutaj wpisz opis obrazu](http://i.stack.imgur.com/GTi7f.jpg) W przypadku przesyłania obrazu szukałem rozwiązań, ale nic nie pomogło, kod to <form id="nowy_post"<?php do_action('post_edit_form_tag'); ?> name="new_post" method="post" action="">
Tytuł
 <input type= „text” id="tytuł" value="" tabindex="1" size="20" name="tytuł" />

Rodzic:
 <?php wp_dropdown_categories('type=product&show_count=0&selected=-1&hierarchical=1&depth=1&hide_empty=0&exclude=0&show_option_none=Wybierz płeć&name=main_prod&taxonomy=product_cat'); ?>

Prześlij obraz
 <input type="file" name="file" id= "plik" />

Treść
 <textarea id="description" tabindex="3" name="description" cols="50" rows="6"></textarea>

Tagi:
 <input type="text" value="" tabindex="5" size="16" name="post_tags" id="post_tags" />

< input type = "prześlij" value = "Publikuj" tabindex = "6" id = "prześlij" name = "prześlij" />
 <input type = "ukryty" name = "akcja" value = "nowy_post" / > <?php wp_non ce_field( 'nowy-post' ); ?> </form>
 <?php if( 'POST' == $_SERVER['REQUEST_METHOD'] && !empty( $_POST['action'] ) && $_POST['action'] == " new_post") { // Przeprowadź drobną walidację formularza, aby upewnić się, że istnieje treść if (isset ($_POST['title'])) { $title = $_POST['title']; } else { echo 'Proszę podać tytuł'; } if (isset ($_POST['opis'])) { $opis = $_POST['opis']; } else { echo 'Proszę wprowadzić treść'; } $tags = $_POST['post_tags']; // Dodaj zawartość formularza do $post jako tablicę $new_post = array( 'post_title' => $title, 'post_content' => $description, 'post_category' => array($_POST['cat']) , // Można używać również dla niestandardowych taksonomii 'tags_input' => array($tags), 'post_status' => 'opublikuj', // Wybierz: publikuj, podgląd, przyszłość, wersja robocza itp. 'post_type' => 'produkt' //'post',strona' lub użyj własnego typu postu, jeśli chcesz ); //zapisz nowy post $pid = wp_insert_post($new_post); //wstaw taksonomie } w functions.php /////////////////////////// funkcja przesyłania plików /////////// //////////// add_action( 'post_edit_form_tag' , 'post_edit_form_tag' ); function post_edit_form_tag() { echo ' enctype="multipart/form-data"'; } nie chcę używać żadnych wtyczek, żadnych pomysłów plz


title: Wyodrębnij wyróżniony obraz z linku wspomnianego w poście na blogu

text: Czy zauważyłeś kiedyś, że w nagłówkach Google News są powiązane odpowiednie obrazy? Jak za pomocą WordPressa wyodrębnić wyróżniony obraz z zewnętrznej strony internetowej, do której odwołuje się post na blogu (lub pole niestandardowe)? Jestem otwarta na wszelkie sugestie. Widziałem tego rodzaju funkcjonalność na wielu stronach internetowych. Musi być na to sposób z WP.


title: Jak się dowiedzieć, jakie funkcje są powiązane z akcją/filtrem?

text: Czy istnieje sposób, aby dowiedzieć się, jakie funkcje są podpięte do konkretnego zaczepu? Na przykład, jeśli chciałbym wiedzieć, jakie funkcje są podpięte do haka `wp_head`.


title: Pytanie dotyczące bazy danych podczas migracji z jednej domeny do drugiej na tym samym WebHost [Bluehost]

text: Mam zamiar przeprowadzić migrację instalacji WordPressa z jednej domeny do innej, która znajduje się pod tym samym hostem i ma wspólny cpanel. Poza pierwszym krokiem tworzenia kopii zapasowej i przenoszenia systemu plików WP, czy możemy po prostu użyć tej samej bazy danych bez eksportowania/importowania jej przez PHPmyAdmin?


title: Sortowanie postów według niestandardowych wartości taksonomii za pomocą pól wyboru?

text:
Pracuję nad projektem, który ma listę rozwijaną niestandardowych wartości taksonomii o nazwie „Dyscypliny”, w liście rozwijanej są tylko 4 z nich. Sposób, w jaki został zaprojektowany, polega na tym, że możesz wybrać więcej niż jedną dyscyplinę do filtrowania. Pomysł polega na zaznaczeniu pola wyboru i będzie filtrować posty według wartości określonej w wartości pola wyboru. Moje pytanie brzmi: jak najlepiej się do tego zabrać? To nie musi być AJAX, w rzeczywistości byłbym szczęśliwy, gdyby użytkownik sprawdził pożądane wartości, a jeśli nie sprawdzi niczego w ciągu około 2 sekund, strona zostanie ponownie załadowana i żądane wartości sortowanie według wyświetlało tylko posty spełniające te kryteria. Problem, z którym się tutaj spotykam, polega na tym, gdzie mam przechowywać te wartości i jak przeładować stronę, aby wiedziała o tych wartościach? Zakładam, że rozwiązanie najprawdopodobniej użyje query_var, ale nie jestem pewien, czy istnieją inne sposoby, takie jak używanie niestandardowych reguł przepisywania i przepisywania tagów. **To jest obecny kod, którego używam do wyświetlania listy rozwijanej:**

 <?php $disciplines = get_terms('discipline', array('hide_empty' = > 0)); ?> Wszystkie dyscypliny <?php if ($disciplines): ?>
 <?php foreach($disciplines JAKO $dyscyplina) : ?>
<input type="pole wyboru" name="dyscyplina[]" value="<?php echo $dyscyplina->slug; ?>" ><?php echo $dyscyplina->nazwa; ?>
 <?php endforeach; ?>
 <?php endif; ?>
 **Wygenerowany kod HTML wygląda tak:**

 Wszystkie dyscypliny

<input type="checkbox" name="discipline[]" value="better-living">Lepsze życie

<input type="checkbox" name="discipline[]" value="communication">Komunikacja

<input type="checkbox" name="discipline[]" value="design-thinking">Myślenie projektowe

<input type="pole wyboru" name="dis cipline[]" value="fashion">Moda

<input type="checkbox" name="dyscyplina[]" value="public-places">Miejsca publiczne


title: Hosting WordPress - Serwer współdzielony/dedykowany? Jakieś zalecenia?

text: Testuję obecnie udostępniony pakiet hostingowy z Dreamhost, który kosztuje tylko 2,95 USD miesięcznie za nieograniczoną liczbę domen, przestrzeń dyskową, przepustowość, bazy danych mysql itp. Ale obecnie prowadzę na nim tylko jedną stronę testową i wydaje się to dość powolne . Czy będę mieć problemy, jeśli będę hostować wiele witryn na wspólnym pakiecie hostingowym? Czy powinienem zamiast tego patrzeć na serwer dedykowany? Wydaje się, że iPage oferuje podobny pakiet, ale z wieloma dodatkami za 3,50 USD miesięcznie. Czy miałeś jakieś doświadczenia z którąś z firm? Każda rada jest bardzo ceniona. Dziękuję


title: gdzie jest dokumentacja parametrów add_action()?

text: Czytam źródło wtyczki (galeria do wtyczki pokazu slajdów), aby zachowywać się tak, jak chcę i używa akcji add_action( 'the_posts', array( &$this, 'have_gallery' ), 10, 1 ); Chcę wiedzieć, co oznaczają te dodatkowe parametry (10,1), ale nie mogę znaleźć dokumentacji tej akcji. Proszę pomóż


title: Czy można przekonwertować pliki języka wordpress .mo na .po (i odwrotnie) w systemie Windows?

text: Wiem, jak przekonwertować te pliki w Linuksie, ale używam Windows 7. Czy można użyć jakiegoś oprogramowania i przekonwertować te pliki?


title: Czy można pozbyć się powiadomień administratora o nowych aktualizacjach?

text: Wykonuję projekty dla klientów i czasami aktualizacja dużo bałagani. Czy możemy więc zostawić komunikaty o błędach i pozbyć się powiadomień o nowych aktualizacjach po stronie administratora wordpress? Dziękuję!


title: Jaka jest najlepsza opcja buforowania dla wielu witryn WordPress na hostingu niewspółdzielonym?

text: Jaką konfigurację wtyczki buforującej polecasz i dlaczego przy następujących założeniach: * pełna kontrola nad konfiguracją serwera * uruchamianie WordPressa w trybie multi-site/multi-domain * większość domen nie używa prefiksu `www.` (cookies) * (chęć ), aby móc wyłączyć buforowanie dla określonych adresów IP lub na podstawie pliku cookie, gdy wprowadzasz zmiany w witrynie, nie potrzebujesz buforowania. Szczegóły: Używam wtyczki Firefox Google Page Speed, aby zoptymalizować szybkość witryny. Proszę również nie kierować się ogólnymi wytycznymi, takimi jak mniejsze obrazy. Bądźmy uczciwi, używanie więcej niż jednej wtyczki buforującej przyniesie więcej problemów niż rozwiąże, więc spróbuj podać proste podejście.


title: Wstaw dane do bazy danych za pomocą formularza

text: Piszę prostą wtyczkę, która tworzy tabelę o nazwie "newsletter" w bazie danych i dostarcza shortcode do umieszczenia formularza rejestracyjnego na stronach. formularz zawiera "imię" i "e-mail". mam problem z wstawieniem danych formularza (nazwa+e-mail) do bazy danych. napisałem to: <?php $nazwa = $_POST['nazwa']; $e-mail = $_POST['e-mail']; funkcja insertuser () { globalna $wpdb; $table_name = $wpdb->prefiks . "biuletyn Informacyjny"; $wpdb->insert($table_name, array('name' => $name, 'email' => $email) ); } ?> ale id nie działa. co mam zrobić, aby pobrać dane z formularza i wstawić do tabeli?


title: $wp_query->queried_object->ID wyrzuca ostrzeżenie: Niezdefiniowana właściwość

text:
<?php $current_term = $wp_query->zapytany_obiekt->nazwa; $current_term_id = $wp_query->queried_object->ID; ?> <hgroup class="section-heading wrapper">
<?php echo $current_term; ?>

<?php echo opis_kategorii( $identyfikator_aktualnego_termu ); ?>
 </hgroup> Działa to dobrze, ale zmienna `$current_term_id` wyświetla ostrzeżenie… Uwaga: Właściwość niezdefiniowana: stdClass::$ID w /Users/my/htdocs/wr/wp-content/themes/ wr/taxonomy-event_type.php on line 12 Jakieś pomysły, co tu robię źle lub jaka jest nieruchomość dla identyfikatora bieżącego terminu?


title: W widżecie wartość pola wyboru nie jest aktualizowana, zmienia się po zapisaniu

text: Buduję prosty widget, który pozwoli użytkownikowi wybrać post z listy postów. Z jakiegoś powodu, kiedy wybieram opcję, uważam, że faktycznie zostaje wybrana, ale opcja nie pozostaje w polu wyboru. Myślę, że mój błąd jest w następnej linii, ale nie udaje mi się go naprawić. Może wywołanie the_ID nie jest sposobem na zrobienie tego...: <option value="<? echo the_ID(); ?>" <?php selected(the_ID(), $instance['post_to_display']); ?>><?php the_title(); ?></option> Oto mój kod: class Simple_Widget extends WP_Widget{ function Simple_Widget() { $widget_ops = array( 'classname' => 'w_reports', 'description' => __('Użyj tego widżetu, aby dodać post na pasku bocznym', 'motyw')); $this->WP_Widget('w_reports', __('Simple_Widget', 'roots'), $widget_ops); } widget funkcji($args, $instance) { extract( $args ); $post_to_display = $instance['post_to_display']; } aktualizacja funkcji($nowa_instancja, $stara_instancja) { $instancja['post_to_display'] = $nowa_instancja['post_to_display']; zwróć $instancję; } function form($instance) { ?> <p> <label for="<?php echo $this->get_field_id('post_to_display'); ?>">Wybierz post do wyświetlenia:</label> <wybierz id ="<?php echo $this->get_field_id('post_to_display'); ?>" name="<?php echo $this->get_field_name('post_to_display'); ?>" class="widefat"> <?php // Moje zapytanie $the_query = new WP_Query( 'post_type=my-post' ); while ( $the_query->have_posts() ): $the_query->the_post(); ?> <wartość opcji="<? echo the_ID(); ?>" <?php selected(the_ID(), $instance['post_to_display']); ?>><?php the_title(); ?></option> <?php endwhile; wp_reset_postdata(); ?> </select> </p> // Tylko test <?php echo $instance['post_to_display']; ?> Co robię źle? Z góry dziękuje za twoją pomoc!


title: Co to jest z miesięcznym limitem czasu na instalacje podkatalogów w sieci wielostanowiskowej?

text: http://codex.wordpress.org/Before_You_Create_A_Network Jeśli przewiniesz w dół, zobaczysz: > Nie możesz wybrać opcji Instalacja podkatalogu (dla sieci opartej na ścieżce), jeśli Twoja > istniejąca instalacja WordPressa została skonfigurowana na więcej niż miesięcznie, > z powodu problemów z istniejącymi linkami bezpośrednimi. (Ten problem zostanie rozwiązany w przyszłej > wersji. Zobacz Przełączanie typów sieci, aby uzyskać więcej informacji.) Uważam, że powoduje to niektóre problemy z permalinkami, z którymi mam tutaj do czynienia. Ale chciałbym zrozumieć, dlaczego jest miesięczny limit czasu i co robią, aby go naprawić. Na przykład problemy z permalinkami, które mam - zdecydowanie zauważam, że nowsze instalacje WP, które mam na moim serwerze, nie mają problemów, podczas gdy starsze są. Co $%%**% dzieje się w okresie jednego miesiąca, który „blokuje” permalinki?


title: Przeglądarka Dokumentów Google ma problem z podblogami MultiSite

text: Przykładowy plik: http://twentyeleven.korkmaz.biz/files/2012/09/example.docx i tutaj jest ten sam plik, ale bezpośredni adres URL bez ms-files.php: http://twentyeleven.korkmaz.biz/wp- content/blogs.dir/3/files/2012/09/example.docx Ten sam plik. Pierwszym z nich jest otrzymanie połączenia z ms-files.php. Problem polega na tym, że pierwszy plik nie działa w przeglądarce dokumentów Google: http://docs.google.com/viewer?url=http://twentyeleven.korkmaz.biz/files/2012/09/example.docx podając ten błąd: > Przepraszamy, w tej chwili nie możemy wygenerować widoku dokumentu. Proszę > spróbuj ponownie później. Możesz również spróbować pobrać oryginalny dokument, klikając > tutaj. Ale jeśli wywołam ten sam plik bezpośrednio bez ms-files.php: http://docs.google.com/viewer?url=http://twentyeleven.korkmaz.biz/wp-content/blogs.dir/3/files /2012/09/example.docx Działa! Z jakiegoś powodu wordpress multisite uszkadza pliki w podblogach. Nie ma problemu w głównym blogu, ponieważ pliki głównego bloga otrzymują bezpośrednie połączenie i nie używają ms-files.php Więc jak mogę to naprawić? Jeśli uważasz, że nie mogę tego naprawić, jak mogę uzyskać prawdziwy adres URL ścieżki z wygenerowanego przez WordPressa /files/url?


title: Wyjaśnienie ról i możliwości użytkownika

text: Zajmuję się tworzeniem motywu Wordpress. W tym motywie istnieje kilka niestandardowych typów postów. Niestandardowe typy postów : * książka * artykuł * wydarzenie Używamy domyślnych ról użytkownika Wordpress (możemy stworzyć nowe role, jeśli to konieczne) . Współtwórcy po prostu publikują nowe **książki** i **artykuły** . Ale nie mogą stworzyć **wydarzenia**. Nie widzą również elementu menu _event_ na **wp-admin** . W jaki sposób mogę to zrobić ? Podczas rejestracji nowego posta wpisz: "map_meta_cap" => TRUE, "capability_type" => "książka", oraz (przy aktywacji wtyczki) $role = get_role( 'contributor' ); $role->add_cap( 'publish_books' ); Ale myślę, że to nadal nie działa. to dla mnie takie skomplikowane. Nie mogłem tego zrobić. Chcę tylko tych ról i możliwości : ## Administrator może widzieć , publikować , publikować wszystko ## Współtwórcy Po prostu widzą, publikują do recenzji **książka** i **artykuł** NIE mogą zobaczyć innych typów postów w menu wp-admin .


title: Indeks w katalogu głównym, wordpress w podkatalogu

text: Dobra, googlowałem to godzinami... Zainstalowałem wordpress w podkatalogu jako system zarządzania treścią, ale chcę, aby mój główny index.php wraz z innymi plikami pozostał w katalogu głównym. Jakiego kodu .htaccess potrzebuję, aby główny adres URL http://foo.com/index.php nie szukał wordpress/index.php (co oczywiście powoduje błąd „Uwaga: require(./wp -blog-header.php) [function.require]: nie udało się otworzyć strumienia: Brak takiego pliku lub katalogu w /home/..."


title: Użyj odpowiedzi ajax w funkcji PHP

text: Ok, więc pracuję nad wtyczką i właśnie natknąłem się na problem. Oto, co robię: 1. Używam metaboxa z Plupload, aby przesłać obraz do katalogu przesyłania w folderze wtyczek. 2. Po pomyślnym załadowaniu wywoływany jest skrypt, a obraz jest inicjowany w jCrop. 3. Przycięty obraz jest przetwarzany i zapisywany w innym katalogu w folderze wtyczek za pomocą formularza z ajaxem. 4. Po pomyślnym przetworzeniu obrazu nazwa nowego, przyciętego pliku jest przekazywana z powrotem. I tu właśnie utknąłem. To, co chcę teraz zrobić, to użyć nazwy pliku, którą przekazałem z powrotem i użyć jej do dalszego przetwarzania w Wordpress. Do tej pory wszystko było obsługiwane bez żadnego specyficznego kodu WP. Teraz myślałem o użyciu `$.get`, aby przekazać nazwę pliku do samodzielnego pliku php w folderze wtyczki i użyć w nim `require_once('wp-load.php');`, aby móc używać Funkcje Wordpressa. Ale podczas czytania natknąłem się na wiele postów, które mówiły, że nie należy zajmować się w ten sposób. Zasadniczo moje pytanie brzmi, jak mam przejść stąd: jQuery.ajax({ type: "POST", url: plugin_path + "process.php", data: dataString, success: function (data) { var obj = jQuery .parseJSON(dane);if (obj.response == 'success') { return obj.tempfile; // WŁĄCZ TO DO INTERAKCJI WP } else { alert('przepraszamy za błąd'); } } }); Do tego miejsca: $video_thumb_url = obj.tempfile; // TO JEST NIEPRAWIDŁOWE, ALE TYLKO Udowodnić $result = media_sideload_image($video_thumb_url, $post_id, 'video_thumbnail'); $attachments = get_posts(array('numberposts' => '1', 'post_parent' => $post_id, 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => 'ASC' )); if(sizeof($attachments) > 0){ // ustaw obraz jako miniaturkę posta set_post_thumbnail($post_id, $attachments[0]->ID); } Z góry dziękuję PS. Naprawdę ciężko było wymyślić tytuł na to, jeśli znasz coś lepiej pasującego, po prostu daj mi znać/edytuj, dzięki.


title: Ile czasu powinno zająć pełne załadowanie wtyczki do repozytorium wtyczek WordPress.org?

text: Zaktualizowałem moją wtyczkę, Eksportuj do tekstu, do wersji 1.3 i przekazałem ją wczoraj do repozytorium SVN WordPress. Przycisk pobierania 1.3 był dostępny dość szybko, ale dzień później tekst przeczytaj mnie nie jest renderowany na stronie wtyczki, a przypomnienie o aktualizacji pobierania nie działa w interfejsie użytkownika WP dla użytkowników z zainstalowanymi wcześniejszymi wersjami. Jak długo zazwyczaj trwa pełne załadowanie wtyczek przez witrynę WordPress.org?


title: Sprawdzanie danych konfiguracyjnych widgetu na stronie administratora

text: Mam prosty widget, który wymaga ustawienia przez użytkownika szerokości i wysokości, aby wyświetlał się poprawnie na blogu. Chodzi o to, że na stronie **Administrator/Appearance/Widgets**, jeśli administrator umieści na szerokości coś w rodzaju "400px", działa to idealnie. Ale co, jeśli użytkownik wpisze „xxxx”? Czy jest jakiś sposób, aby uruchomić jakiś javascript, gdy użytkownik naciśnie przycisk „Zapisz”, aby **informować użytkownika, że dane są nieprawidłowe**? Rozejrzałem się w poszukiwaniu zaczepów na przycisku zapisu lub sposobów na przechwycenie zgłoszenia, ale nic nie znalazłem. Czy patrzę na ten problem z niewłaściwej perspektywy? Czy jest na to lepszy sposób? Z góry dziękuję.


title: Prawidłowy sposób dodania elementu blokowego do układu paska bocznego

text: Pierwszy raz eksperymentuję z wordpressem i szukam porady, jak poprawnie dodać blok HTML do paska bocznego. Nie wydaje mi się to niestandardowym widżetem, ponieważ nie ma w nim żadnej funkcji poza wyświetlaniem obrazu. Chcę umieścić go nad menu paska bocznego, które już tam istnieje - zamiast po prostu wrzucać html bezpośrednio do pliku szablonu, czy powinienem zrobić z nim coś innego? Dzięki za wszelką pomoc!


title: Blubrry PowerPress kontra PodPress?

text: Konfiguruję prostą instalację WP, aby hostować podcast przyjaciela i przeglądam różne wtyczki do podcastów. Potrzebuję czegoś, co ułatwi załadowanie podcastu, dołączenie go do posta i opublikowanie kanału, który mogę udostępnić w iTunes. Większość szumu wydaje się wskazywać, że PodPress i Blubrry PowerPress to dwie najlepsze wtyczki do tego celu, ale nie znalazłem dobrej listy tego, co oferuje jedna nad drugą. Jakie są mocne i słabe strony tych wtyczek? Czy są jakieś inne świetne wtyczki związane z podcastami, które powinienem rozważyć?


title: Zmiana opcji „Wpisz tutaj tytuł” na podstawie formatu posta

text: Zastanawiam się, czy można zmienić tekst „Wpisz tutaj tytuł” na podstawie wybranego formatu posta? Na przykład: Jeśli wybierzesz format postu **Cytat**, Twój tekst będzie miał postać „Wprowadź cytat autora”. Czy to jest możliwe?


title: Dlaczego load_textdomain działa, ale nie load_plugin_textdomain?

text: W funkcji `init` mojej wtyczki load_textdomain( 'myplugin', ABS_PATH_TO_MO_FILE ); // OK load_plugin_textdomain( 'moja wtyczka', fałsz, ABS_PATH_TO_LANGS_DIR); // Brak efektu echo( __('Test', 'myplugin') ); W powyższym kodzie działa load_textdomain, ale nie load_plugin_textdomain, jakiś pomysł?


title: Firebug mówi, że jQuery jest załadowane, ale $() i jQuery() nie są zdefiniowane

text: Próbuję przetestować moją stronę wordpress za pomocą prostego skryptu jQuery, ale to nie zadziała. Załadowałem skrypt za pomocą `wp_enqueue_script('jquery');` w `functions.php` jak wyjaśniono w przewodniku wordpress, ale coś jest błędne. Testuję stronę za pomocą `FireBug` zainstalowanego w `Firefox 4` i jeśli spojrzę na listę załadowanych skryptów, wszystko jest w porządku, ale również zwraca mi błąd `jQuery nie jest zdefiniowany`. Postępowałem zgodnie z instrukcjami w trybie `noConflict`, ale nadal u mnie nie działa: // functions.php <?php function init_scripts () { if (!is_admin()) { wp_enqueue_script('jquery'); } } add_action('init', 'init_scripts'); ?> // header.php <script type="text/javascript"> (function($) { $(document).ready(function() { alert('hello?'); }); }(jQuery)) ; </script> Gdzie się mylę? Próbowałem też tego samouczka i mówi, że obiekt jQuery nie jest tutaj zdefiniowany: // jquery z ajax.googleapis.com jest poprawnie załadowany $j=jQuery.noConflict(); // firebug mówi, że jQuery nie jest tutaj zdefiniowane $j(document).ready(function(){ alert('test'); });


title: Tworzenie strony Wordpress przyjaznej do druku

text: Próbuję użyć istniejącej wtyczki, aby moje posty były przyjazne do druku. Nie mam żadnego wsparcia od twórcy wtyczek. Myślę, że zawęziłem skrypt do funkcji, która umieszcza w postach tekst „Drukuj”. Problem polega na tym, że ta wtyczka automatycznie umieszcza przycisk „Drukuj”. Ale chciałbym umieścić go w szablonie i zapobiec automatycznemu umieszczaniu. To jest kod, który wykonuje zadanie umieszczania przycisku drukowania. Czy ktoś może zaproponować modyfikację tak, aby poniższy skrypt 1. NIE umieszczał automatycznie przycisku 'Drukuj'. 2.Jaka byłaby funkcja do wywołania/umieszczenia na mojej stronie single.php. if ( !$_GET['print'] == 1 ) { add_filter( 'treść', 'printme_add_link' ); } function printme_add_link( $content ) { if ( is_singular() ) { $printme_options = get_option( 'printme_options' ); $print_stub = $printme_options['print_text']; } wp_enqueue_script( 'jquery' ); wp_register_script( 'printme', plugins_url( '/printme.js', __FILE__ ), false, '1', true ); wp_enqueue_script( 'printme' ); $link = add_query_arg( 'drukuj', '1', pobierz_permalink() ); $content = '' . $print_stub . „”. $treść; zwróć $treść; } add_action( 'template_redirect', 'printme', 5 ); function printme() { if ( $_GET["print"] == 1 ) { include( plugin_dir_path(__FILE__) 'print.php' ); Wyjście(); } }


title: Sortowanie głównego zapytania według niestandardowego ślimaka taksonomii

text: Czy istnieje sposób sortowania postów według niestandardowej taksonomii (kolor_butów) ASC|DESC? Chciałbym to zrobić za pomocą `query_posts` i przekazując do niego `orderby=shoe_color`. Oto kod, który próbuję wypracować: function shoe_color_orderby( $wp_query ) { global $wpdb; return "( SELECT GROUP_CONCAT (slug ORDER BY slug ASC) FROM $wpdb->term_relationships INNER JOIN $wpdb->term_taxonomy USING (term_taxonomy_id) INNER JOIN $wpdb->terms USING (term_id) GDZIE $wpdb->identyfikatory. I taksonomia = 'shoe_color' GROUP BY object_id ) "; } add_filter( 'posts_orderby', 'shoe_color_orderby');


title: Przełącz motyw, jeśli tj. tryb zgodności / dziwactwa?

text: Jak można wykryć, że przeglądarka używa trybu dziwactwa/zgodności, a następnie przełączać motywy, jeśli zostaną wykryte? Opracowałem nowy, „responsywny” motyw dla wordpress. Świetnie działa na telefonach komórkowych i we wszystkich testowanych przeglądarkach - firefox, chrome, nawet 6, 7, 8 i 9. Jedyny problem pojawia się przy korzystaniu z trybu kompatybilności w Internet Explorerze - strona przestaje odpowiadać (divs i obrazy nie skalują się prawidłowo). Na chwilę obecną całkowicie wyłączyłem widok zgodności za pomocą: <meta http-equiv="X-UA-Compatible" content="IE=Edge"> Więc kilka pytań: * Czy powinienem oczekiwać, że motywy responsywne będą działać poprawnie np. tryb zgodności? * Jak mogę zmienić motyw na inny, jeśli wybrany jest tryb zgodności? Dziękuję


title: Jak mogę debugować połączenie z bazą danych do testów jednostkowych?

text:
Skonfigurowałem środowisko wordpress na moim Macu za pomocą MAMP i używam lokalnie 3.5.1 (tj. `http://localhost:8888/blog` działa). Próbuję uruchomić test jednostkowy z wordpress.org i mam problem z połączeniem z bazą danych. $ svn co https://unit-tests.svn.wordpress.org/trunk wordpress-tests $cd wordpress-tests $cp wp-tests-config-sample.php wp-tests-config.php edytuj `wp-test- config.php` dla mojej konfiguracji $ cat wp-tests-config.php <?php /* Ścieżka do bazy kodu WordPress, którą chcesz przetestować. Dodaj na końcu ukośnik odwrotny. */ define( 'ABSPATH', '/Aplikacje/MAMP/htdocs/blog/' ); // Test z włączonym trybem wielostanowiskowym: (wcześniej -m) // define( 'WP_TESTY_MULTISITE', true ); // Wymuś znane błędy: (poprzednio -f) // define( 'WP_TESTS_FORCE_KNOWN_BUGS', true ); // Testuj z włączonym trybem debugowania WordPressa (wcześniej -d) // define( 'WP_DEBUG', true ); // ** Ustawienia MySQL ** // // Ten plik konfiguracyjny będzie używany przez testowaną kopię WordPressa. // wordpress/wp-config.php zostanie zignorowany. // OSTRZEŻENIE OSTRZEŻENIE OSTRZEŻENIE! // Te testy spowodują UPUSZCZENIE WSZYSTKICH TABEL w bazie danych z prefiksem podanym poniżej. // NIE używaj produkcyjnej bazy danych lub takiej, która jest współdzielona z czymś innym. define( 'DB_NAME', 'wordpress' ); define( 'DB_USER', 'root' ); define( 'DB_PASSWORD', 'root' ); define( 'DB_HOST', 'localhost:8889' ); define( 'DB_CHARSET', 'utf8' ); define( 'DB_COLLATE', '' ); $table_prefix = 'wp_'; // Proszę tylko cyfry, litery i podkreślenia! define( 'WP_TESTY_DOMAIN', 'przyklad.org' ); define( 'WP_TESTY_EMAIL', 'admin@example.org' ); define( 'WP_TESTS_TITLE', 'Blog testowy'); define( 'WP_PHP_BINARY', 'php' ); zdefiniuj( 'WPLANG', '' ); Ale kiedy próbuję uruchomić pakiet testowy, `phpunit` nie może połączyć się z bazą danych: $phpunit ...
Błąd podczas nawiązywania połączenia z bazą danych

Oznacza to, że nazwa użytkownika i informacje o haśle w pliku wp-config.php są nieprawidłowe lub nie możemy skontaktować się z serwerem bazy danych pod adresem localhost:8889. Może to oznaczać awarię serwera bazy danych hosta.
 ... Czy ktoś może pomóc w rozwiązaniu tego problemu? ** EDYCJA ** Po dodaniu `wp-content/db-error.php` jak opisano poniżej. Otrzymuję następujący błąd: $ phpunit PHP Ostrzeżenie: mysql_error() oczekuje, że parametr 1 będzie zasobem, wartość logiczna podana w /Users/spinlock/WordPress/wordpress-3.5.1/wp-includes/wp-db.php on-line 1023 Błąd bazy danych WordPress dla zapytania wykonanego przez require_once('/Users/spinlock/WordPress/wordpress-3.5.1/wp-settings.php'), wp_set_wpdb_vars, dead_db, require_once('/Users/spinlock/WordPress/wordpress-3.5. 1/wp-content/db-error.php') Uruchamianie jako jedna witryna... Aby uruchomić wiele witryn, użyj -c multisite.xml PHP Ostrzeżenie: mysql_error() oczekuje, że parametr 1 będzie zasobem, wartość logiczna podana w /Users/spinlock /WordPress/wordpress-3.5.1/wp-includes/wp-db.php w wierszu 1023 Błąd bazy danych WordPress dla zapytania wykonanego przez PHPUnit_TextUI_Command::main, PHPUnit_TextUI_Command->run, PHPUnit_TextUI_Command->handleArguments, PHPUnit_TextUI_Command_ptilhandle: PHPUnit_TextUI_Command_ptilhandle :checkAndLoad, PHPUnit_Util_Fileloader::load, include_once('/Users/spinlock/WordPress/wordpress-tests/i ncludes/bootstrap.php'), require_once('/Users/spinlock/WordPress/wordpress-3.5.1/wp-settings.php'), wp_set_wpdb_vars, dead_db, require_once('/Users/spinlock/WordPress/wordpress-3.5. 1/wp-content/db-error.php') wp-db.php wiersz 1023 jest implementacją `print_error()` i tu się dławi: 1019 function print_error( $str = '' ) { 1020 global $EZSQL_ERROR; 1021 1022 if ( !$str ) 1023 $str = mysql_error( $this->dbh ); 1024 $EZSQL_ERROR[] = array( 'query' => $this->ostatnie_zapytanie, 'error_str' => $str ); 1025 **Rozwiązanie** Ok, w końcu udało mi się to uruchomić, zmieniając `DB_HOST` na `localhost:/Applications/MAMP/tmp/mysql/mysql.sock`. A testy są uruchomione: $ phpunit Instalowanie... Uruchamianie jako pojedyncza witryna... Aby uruchomić wiele witryn, użyj -c multisite.xml Nie uruchamiaj testów ajax... Aby je wykonać, użyj --group ajax. PHPUnit 3.7.19 autorstwa Sebastiana Bergmanna. Konfiguracja odczytana z /Users/spinlock/WordPress/wordpress-tests/phpunit.xml.dist .............FFF................PHP Błąd krytyczny: Wywołanie niezdefiniowanej funkcji wp_unslash() w /Users/spinlock/WordPress/wordpress-tests/tests/attachment/slashes.php w wierszu 45. Błąd krytyczny: Wywołanie niezdefiniowanej funkcji wp_unslash() w /Users/spinlock/WordPress/ wordpress-tests/tests/attachment/slashes.php w wierszu 45


title: Struktura permalink na stronę dla typu postu na stronie

text: Próbuję przepisać adresy URL stron tak, aby kończyły się na `.htm` Udało mi się to zrobić używając... /* Dodaj rozszerzenie .htm do linków URL strony */ add_action('init', 'htm_page_permalink', -1); funkcja htm_page_permalink() { globalna $wp_rewrite; if (! strpos($wp_rewrite->get_page_permastruct(), '.htm')){ $wp_rewrite->page_structure = $wp_rewrite->page_structure . '.htm'; } } /* Usuń końcowy ukośnik/ na stronach */ add_filter('user_trailingslashit', 'no_page_slash',66,2); funkcja no_page_slash($string, $type){ global $wp_rewrite; if ($wp_rewrite->using_permalinks() && $wp_rewrite->use_trailing_slashes==true && $type == 'strona'){ return unrailingslashit($string); }else{ return $string; } } Ale potem natknąłem się na problem, w którym używam mojej listy postów `Blog` na stronie o nazwie `Blog`. Potrzebuję, aby ta strona **NIE** kończyła się na `.htm` Więc użyłem tego kodu, aby zmienić linki do stron, aby odfiltrować `.htm` na mojej stronie `blog`... /* Filtruj .htm linków do stron bloga */ function blog_page_url($content) { $bieżąca_ścieżka = '/blog.htm'; $nowa_ścieżka = '/blog/'; $treść = str_replace($bieżąca_ścieżka, $nowa_ścieżka, $treść); zwróć $treść; } add_filter('_get_page_link', 'blog_page_url'); I użyłem tej reguły ponownego zapisu, aby `/blog/` załadował `stronę bloga` ... /* Ustaw niestandardowe ponowne zapisywanie dla strony bloga */ add_action( 'init', 'blog_page_rewrite' ); funkcja blog_page_rewrite(){ add_rewrite_rule('blog', 'index.php?pagename=blog','top' ); //add_rewrite_rule('blog/(.*?)/', 'index.php?p=$matches[1]','top' ); } Ale teraz mam problem, że każdy URL z `/blog/` w nim wyświetla `stronę bloga`. Oznacza to, że mój aktualny post na blogu, który jest skonfigurowany w ustawieniach WP Permalink w ten sposób... `/blog/%postname%/` nie działa, zamiast tego zawsze wyświetla `stronę bloga`, która zawiera listę wszystkich postów na blogu. W mojej funkcji `blog_page_rewrite()` powyżej możesz zobaczyć, że przetestowałem dodatkową regułę ponownego pisania, aby miejmy nadzieję, że będzie działała z wpisami na blogu, ale nie miało to żadnego wpływu.


title: Wtyczka skanuje w poszukiwaniu obrazów w post_content, co powiesz na „polecany obraz”?

text:
Korzystam z SEO WordPress firmy Yoast, szczególnie dla funkcji mapy witryny Google News. Mój motyw jest zakodowany w taki sposób, że główny obraz postu jest jednocześnie wyróżnionym obrazem punktu (tj. ten sam obraz, ale inny rozmiar, jest wyświetlany dla miniatur postów). To była decyzja projektowa, którą musiałem podjąć (z różnych powodów, które mogę tu powiedzieć). * * * Jeśli to pomoże, kod wygląda tak:

<?php the_post_thumbnail( 'full' ); ?>
 <?php the_content( __( 'Kontynuuj czytanie →', 'reddle' ) ); ?> <?php wp_link_pages( array( 'before' => '
' . __( 'Strony:', 'reddle' ), 'after' => '
' ) ); ?>
 być w polu `post_content` dla tego posta w bazie danych. A ponieważ nie tak działają polecane obrazy, główny obraz mojego posta nie jest wymieniony w mapie witryny. Teraz pytanie brzmi – czy istnieje sposób na obejście tego problemu? Nie chcę edytować wtyczki (chyba że nie ma innego sposobu). Czy istnieje sposób, aby umieścić polecany obraz w `post_content`, tak jak jest to pokazane w kodzie? (np. `<p style="text-align: center;"><img src="FEATURED IMAGE LINK" /></p>`)


title: Uzyskaj adres URL obrazu z biblioteki multimediów na wejściu

text: Na przykład na `wp-admin/post.php?post=447&action=edit` mam link i wejście. Link wygląda następująco: galeria Po kliknięciu linku otworzy się biblioteka multimediów i chcę adres URL wstawionego obrazu do wypełnienia pola wejściowego, np. <input type="text" name="tj_image_url" id="tj_image_url" value="VALUEHERE" size="30" /> Jak mogę to zrobić?


title: Problemy z wybuchem

text: W panelu administracyjnym mam pole tekstowe do wpisywania nazw kategorii. W tej chwili to jest to, co znajduje się na stronie głównej wydarzeń Tak jak powyżej. Dwie kategorie oddzielone spacją. Więc teraz próbuję pobrać kategorie z bazy danych i robię to w ten sposób. (Używam frameworku SMOF) echo $data['exclude_categories']; Jeśli zrobię powyższe, wyświetli się strona główna zdarzeń, więc próbuję uzyskać znak - i przecinek umieszczony między każdą kategorią, tak //przechodzenie przez mój klucz w pętli, aby uzyskać wartości $string = explode("", $ dane['exclude_categories'] ); foreach($string as $cat) { //konkatenowanie moich wartości w jeden ciąg $string .= '-' .$cat.","; } echo $data['exclude_categories']; //do celów testowych //ucinanie końcowego przecinka z łańcucha $string = substr($string, 0, -1); // Usuń ostatni znak Mój problem polega na tym, że otrzymuję „Array-events,-homepage” i nie wiem, dlaczego Array tam jest


title: zapytanie mysql ze strony wordpress przy użyciu niestandardowej tabeli

text: Chcę, aby zapytanie mysql pasowało do tytułu strony. Nie jestem pewien lepszego sposobu na wykonanie tego zadania, ale utknąłem. To jest mój podstawowy kod testowy. <?php $page_title = wp_title(''); echo $tytuł_strony; $test = $wpdb->get_results("SELECT * FROM $wpdb->park_data WHERE park_name = '"$page_title"' ") or die(mysql_error()); $wiersz = mysql_fetch_array($test); echo $row['nazwa_parku']; ?> Ciągle otrzymuję błąd w zapytaniu. Jeśli po prostu echo wp_title('');, nie ma problemu, drukuje. Czy ktoś może zobaczyć, co robię źle?


title: Jakieś wtyczki, które przesyłają, zmieniają rozmiar i wyświetlają obrazy?

text: Oto idealny przepływ pracy dla mojej sytuacji: 1. Prześlij folder pełen obrazów 2. Zmień rozmiar obrazów zgodnie z określonym rozmiarem 3. Masz możliwość organizowania tych obrazów w folderach (kolekcja1, kolekcja2 itp.) 4. Wyświetlaj obrazy w te foldery w galerii innej niż Flash (kolekcja 1 na stronie 1, kolekcja 2 na stronie 2, itd.) Czy jest jakaś wtyczka, która pomoże w tym procesie od początku do końca, lub zestaw wtyczek, które dobrze ze sobą współgrają? Ważne jest, aby te galerie działały na urządzeniach nieobsługujących Flasha, ponieważ ruch z komórek i tabletów będzie znaczny. Płatne jest w porządku dla dobrej jakości wtyczki. Dziękuję.


title: Edytuj nagłówek strony w niestandardowej wtyczce

text: Piszę niestandardową wtyczkę do Wordpressa, ale jak na świecie edytować nagłówek strony? Muszę tam dodać trochę javascriptu i powiązanych kodów.


title: get_pages i get_posts zwracają różne dane?

text: to doprowadza mnie do szału... Mam stronę wtyczki administratora, która zawiera listę stron dla witryny Wordpress. Próbuję wyświetlić listę wszystkich stron za pomocą get_pages(), ale z jakiegoś powodu po opublikowaniu strony już się nie pojawiają - kiedy używam get_posts, pojawiają się, ale nowe wersje robocze nie :( Oto kod.. proszę o pomoc //to wyświetla tylko nowe wersje robocze stron - gdy opublikowane strony nie pojawiają się tutaj $args = array('post_status' => 'szkic, publikuj'); $pages = get_pages($args); foreach ( $pages as $page ) { jakiś kod HTML wyświetlający tytuł strony } //ten fragment kodu zwróci wszystkie strony po ich opublikowaniu, //nawet jeśli "nieopublikowane" później - ale nie zwróci nowych wersji roboczych stron globalnie $post; $args2 = array( 'numberposts' => 50, 'post_status' => 'publish, draft'); $myposts = get_posts( $args2 ); foreach( $myposts as $post ) { setup_postdata($post) ; ... trochę kodu HTML do wyświetlania stron } o co chodzi?


title: 302 na instalacji Wordpress Multi na subdomenie

text: Mam instalację Multi Site na www.example.com, która działa dobrze. Następnie zrobiłem dokładną kopię tej instalacji i umieściłem ją na subdomenie tej strony: subdomain.example.com. Domena najwyższego poziomu nadal działa dobrze. Ale instalacja Multi Site na subdomenie wciąż przekierowuje (302) mnie do mojej domeny najwyższego poziomu. I po prostu nie mogę dowiedzieć się, gdzie może być to przekierowanie. Co powinienem zrobić?


title: Używanie TinyMce z obszarami tekstowymi w meta polach na niestandardowych typach postów

text: Próbuję użyć wtyczki http://www.tinymce.com/, aby dodać tinymce do moich obszarów tekstowych w utworzonych przeze mnie metaboxach. Szukałem w Google innych sposobów i albo nie mogę zmusić tego do pracy, albo nie pojmuję koncepcji. A więc to właśnie próbuję teraz - próbowałem stworzyć wtyczkę, aby dodać skrypt do mojego pulpitu administratora - add_action('admin_init', 'admin_load_scripts'); function admin_load_scripts() { $js_file = plugins_url( '/tinymce/jquery.tinymce.min.js', __FILE__ ); wp_enqueue_script('jquery.tinymce.min', $js_file, array('jquery')); } Następnie muszę to tak nazwać -- <script> tinymce.init({selector:'textarea'}); </script> Ale nie jestem pewien, jak to zrobić, ponieważ dotyczy to backendu, a nie frontendu. Jak mogę to osiągnąć? **AKTUALIZOWANE** To jest mój kod do metaboksów. http://pastebin.com/WcC51uA9 Wypróbowałem następujące metody (oczywiście umieszczając je w functions.php) i przez większość czasu albo po prostu nie działały, albo pojawiały się na górze strony lub na dole Strona. W ogóle nie pojawiły się w obszarze tekstowym. --- http://pastebin.com/Ct0mF6q7 http://pastebin.com/R6t0ij6h http://pastebin.com/dcczcVby http://pastebin.com/yt1uRS5U


title: Flush Rewrite Rules po utworzeniu nowej witryny w sieci

text: Pracuję z konfiguracją wielostanowiskową i stworzyłem kilka niestandardowych typów postów, które wydają się działać dobrze, z wyjątkiem próby wyświetlenia dowolnej strony z typami postów w interfejsie użytkownika, pojawia się biały ekran. Po przyjrzeniu się temu problemowi wydaje się, że zasady przepisywania kodu naprawiają go. Problem polega na tym, że administratorzy nie mają dostępu do ustawień permalinków, więc nie mogą sami go opróżnić. Obecnie używam następującego kodu do opróżniania podczas aktywacji motywu, ale nie jest to idealne, ponieważ użytkownik będzie musiał przełączyć się na inny motyw, a następnie wrócić do motywu podstawowego. Próbuję więc znaleźć sposób na zmodyfikowanie poniższego kodu, aby działał podczas tworzenia nowej witryny, dzięki czemu niestandardowe typy postów działają od samego początku. --- /* Opróżnij reguły przepisywania dla niestandardowych typów postów. */ add_action( 'after_switch_theme', 'bt_flush_rewrite_rules' ); /* Opróżnij reguły przepisywania */ function bt_flush_rewrite_rules() { flush_rewrite_rules(); }      Każda pomoc jest mile widziana, dzięki. **ZAKTUALIZOWANE** Mam witrynę główną, którą użytkownicy rejestrują za pośrednictwem interfejsu użytkownika w witrynie takiej jak mysite.com/theirsite. Domyślny motyw dla nich jest ustawiony. Tam właśnie próbuję umieścić kod, tak więc flush rewrite działa, gdy tworzą witrynę, a nie przełączają motyw. Panel administracyjny jest uproszczony, więc nie mają dostępu do permalinków ani motywu -> edytor. Pomyślałbym jednak, że podczas tworzenia niestandardowych typów postów należy przepisać opróżnianie, a więc nawet nie trzeba używać dodatkowego kodu? Jeśli to pomoże, to mój kod wpisu rejestru - http://pastebin.com/XsRjLj3q


title: Jak dodać aktywną klasę do osobnego linku do strony?

text: Jako motyw bazowy używam motywu Wordpress Bootstrap. Używa następującego kodu, aby dodać klasę "active" do dowolnych linków w nagłówku, jeśli użytkownik jest aktualnie na tej stronie: add_filter('nav_menu_css_class', 'add_active_class', 10, 2 ); function add_active_class($classes, $item) { if($item->menu_item_parent == 0 && in_array('current-menu-item', $classes)) { $classes[] = "active"; } zwróć $klasy; } Mam jednak wiele stron, które chcę wyświetlić jako „aktywne”, gdy użytkownik nie znajduje się na tej konkretnej stronie. Na przykład użytkownicy mogą czasami znajdować się na „samouczkach według tematu” (Samouczki według tematu), ale chcę, aby link zatytułowany „Samouczki” był wyświetlany jako aktywny link. Mam cztery strony, które chcę zrobić w ten sposób. Próbowałem różnych warunków itp. w funkcji add_active_class, ale nie miałem szczęścia. Jakieś wskazówki? Dziękuję!


title: Wydajność PODS vs pole niestandardowe

text: używa własnego typu treści podów, w którym niestandardowe pola są przechowywane w jednej tabeli bardziej skalowalne niż niestandardowe pola wordpress, gdzie każde pole jest wierszem w metatabeli... Nie używałem jeszcze PODS, ale wydaje się, że wszystkie pola są przechowywane w jednej tabeli bardziej skalowalny i łatwiejszy w utrzymaniu? jakie są wady PODSów (nie widzę wielu osób, które go używają)? czy niestandardowe pola podów mogą być indeksowane przez wyszukiwarkę?


title: Ustaw taką samą wartość posts_per_page na wszystkich stronach

text: Prawie skończyłem z tym, pozostał tylko mały problem. Mam nadzieję, że możesz mi pomóc. Mam dwie bardzo proste, niestandardowe pętle. Jeden do słupków samoprzylepnych, a drugi do słupków nieprzylepnych. Udało mi się sprawić, by przyklejone posty pojawiały się tylko na stronie 1, a nie na pozostałych stronach (przy korzystaniu z paginacji), a właśnie tego chcę. Problem polega na tym: jeśli używam posts_per_page ustawionej na 8 i mam 1 przyklejony post w mojej bazie danych, otrzymuję 9 postów na pierwszej stronie i 8 na pozostałych stronach. Udało mi się zmienić wartość posts_per_page za pomocą tego skryptu pomiędzy pętlami: $postcount = $wp_query->post_count; $numer pocztowy = 8; if ( $paged != True ){ $postnumber = $postnumber - $postnumber; } i prawie działa. Jeśli mam 1 przyklejony post i post 15-9 na pierwszej stronie, a następnie klikam następny przycisk, WP pomija post #8 i pokazuje tylko 7-1 na następnej stronie. Oto mój kod: <!-- Sticky --> <?php if ( $paged != True ): ?> <?php $wp_query = new WP_Query(array('post__in' => get_option('sticky_posts'), 'category_name' => Praca)); ?> <?php while ($wp_query->have_posts()) : $wp_query->the_post(); ?> <?php get_template_part( 'pętla', 'indeks' ); ?> <?php koniec; ?> <?php wp_reset_postdata(); // zresetuj zapytanie ?> <?php endif ?> <?php $postcount = $wp_query->post_count; $numer pocztowy = 8; if ( $paged != True ){ $postnumber = $postnumber - $postnumber; } ?> <!-- Non-Sticky --> <?php $wp_query = new WP_Query(array('post__not_in' => get_option('sticky_posts'), 'category_name' => Praca, 'posts_per_page' => $postnumber , 'stronicowany' => $stronicowany)); ?> <?php while ($wp_query->have_posts()) : $wp_query->the_post(); ?> <?php get_template_part( 'pętla', 'indeks' ); ?> <?php koniec; ?> <?php wp_reset_postdata(); // zresetuj zapytanie ?>


title: Niestandardowy typ wpisu Metapole Pole tekstowe nie zostanie zapisane, gdy jest puste

text:
Mam kilka pól tekstowych w niestandardowym typie wpisu, które wypełniam na początku, ale muszę je usunąć przy przyszłej aktualizacji wpisu. Kiedy usunę tekst w polu i zapiszę post, tekst, który usunąłem, wraca! Jeśli wprowadzę spację, zapisuje OK. Czy ktoś wie, jak mogę to naprawić? Oto części kodu dla mojego niestandardowego typu postu, które wyświetlają i zapisują dane pola (nie wysłałem kodu inicjującego niestandardowego typu posta, ponieważ pochodzi on bezpośrednio z kodeksu): function book_info() { global $post; $custom = get_post_custom($post->ID); $book_title = $custom["book_title"][0]; ... (więcej zmiennych pól) ... ?>
Tytuł książki:
 <input class="medium" name="book_title" value="<?php echo esc_html ($book_title); ?>" />
 ... (więcej bloków wyświetlania pól) ... <?php } add_action('save_post', 'save_book'); function save_book($post_id) { // Zweryfikuj, że pochodzi z naszego ekranu z odpowiednią autoryzacją. if (! wp_verify_nonce( $_POST['book_info_noncename'], 'book_info'.$post_id)) { return $post_id; } // Sprawdź, czy jest to procedura autozapisu. Jeśli tak, nasz formularz nie został przesłany i nie chcemy nic robić. if ( define('DOING_AUTOSAVE') && DOING_AUTOSAVE ) return $post_id; // Sprawdź uprawnienia if ( !current_user_can( 'edit_post', $post_id )) return $post_id; // Teraz, gdy uwierzytelnianie jest zakończone, znajdź i zapisz dane. $post = get_post($post_id); if ($post->post_type == 'book') { if (isset($_POST["book_title"]) && $_POST["book_title"] <> '') update_post_meta($post->ID, "book_title" , $_POST["tytuł_książki"]); ... (więcej instrukcji zapisu pól) ... return($_POST['book']); } return $post_id; } Jeśli wpiszę tekst w polu „tytuł_książki” i zapiszę, to działa. Jeśli następnie usunę ten tekst i zapiszę, tekst nadal będzie tam, gdy ekran edycji posta zostanie odświeżony po kliknięciu Zapisz. Jeśli usunę ten tekst i zastąpię go spacją, zapisze. Muszę mieć możliwość usunięcia tekstu z pola bez konieczności zastępowania go spacją. Masz jakieś przemyślenia, jak to zrobić?


title: Usuń /author/ z adresu URL profilu autora

text: Próbuję znaleźć najlepszy sposób na usunięcie /author/ z adresu URL profilu moich użytkowników. Próbowałem użyć metody podanej w poniższym łączu i chociaż zadziałało, uniemożliwiło mi to również dostęp do innych moich stron, które używały szablonu strony. Więc nie jesteś pewien, czy muszę wprowadzić poprawki w kodzie? Chciałbym to zrobić za pomocą pliku funkcji i nie używać wtyczki, więc wszelkie wskazówki są bardzo mile widziane. add_action('init', 'cng_author_base'); funkcja cng_author_base() { global $wp_rewrite; $author_slug = ''; // zmień nazwę ślimaka $wp_rewrite->author_base = $author_slug; }


title: Zmień adres URL obrazu z wp_get_attachment_image_src

text: Wywołuję wiele obrazów za pomocą `wp_get_attachment_image_src()` i chciałbym załadować te obrazy do CDN. Czy istnieje filtr do pobrania adresu URL i zmiany go?


title: debugowanie wordpress

text: Zauważyłem, że kiedy pracuję na stronie php, która programowo ładuje wp, niektóre z moich błędów nie są odpalane. Na przykład zmienne, które nie zostały wcześniej zainicjowane, tworzą ostrzeżenie, gdy mam E_ALL na górze, ale nie, gdy ładuję później wp. Jakieś uwagi? jak ustawić wordpress w trybie, aby zgłaszane były jakiekolwiek błędy.


title: Hak akcji „wp_insert_post” działa, ale nie dla ostatniego zaimportowanego postu

text: Chcę uruchomić funkcję niestandardową za każdym razem, gdy wpisy są importowane do mojego niestandardowego typu wpisu. Obecnie używam tego kodu - function on_post_import($post){ global $wpdb; $results = $wpdb->get_results( "SELECT ID FROM $wpdb->posts WHERE post_type = 'post' AND post_status = 'publish'" ); foreach ($results as $result) { // uruchom funkcję niestandardową } $wpdb->flush(); } add_action( 'wp_insert_post', 'on_post_import' ); Problem, z którym się borykam, polega na tym, że nie działa dla ostatniego zaimportowanego posta. Więc jeśli zaimportowane są 3 posty, to działa dobrze dla 2 z tych postów, ale nie dla trzeciego (ostatniego zaimportowanego). AKTUALIZACJA: Jeśli zaimportowano tylko jeden post, funkcja niestandardowa nie działa. UPDATE2: Wygląda na to, że problem dotyczy mojej niestandardowej funkcji, która korzysta z funkcji get_post_meta(), która wydaje się niczego nie wyprowadzać. ** AKTUALIZACJA 3: Teraz po prostu używam zapytania wpdb do uruchamiania funkcji niestandardowej. _Chcę tego uniknąć, ponieważ będzie działał w tle._ Jeśli ktoś ma lepsze rozwiązanie, daj mi znać dzięki!** global $wpdb; $results = $wpdb->get_results( "SELECT ID FROM $wpdb->posts WHERE post_type = 'post' AND post_status = 'publish'" ); foreach ($results as $result) { // uruchom funkcję niestandardową } $wpdb->flush(); Co złego robię? A może jest jakiś inny sposób, aby moja funkcja działała na wszystkich zaimportowanych postach, w tym na ostatnim zaimportowanym?


title: get_post_meta() puste w podglądzie KIEDY opublikowany jest niestandardowy post

text: Więc mój klient zdołał znaleźć jakiś (błąd?), gdy publikowany jest niestandardowy post, a on wyświetla podgląd wszystkich informacji, które są publikowane z niestandardowymi meta polami, są niedostępne. Kiedy zacząłem debugować, stwierdziłem, że w tym przypadku post meta zwraca puste. Ktoś wie, dlaczego system działa w ten sposób. I tak, kiedy patrzę na post, nie podgląd, wszystkie informacje pokazują się dobrze. A przed wysłaniem get_post_meta() działa dobrze. Tylko w tym przypadku, gdy post jest publikowany i klikany jest podgląd.


title: Czy można dodać filtr dla wyjścia elementów menu nawigacyjnego w admin?

text: Chcę usunąć niektóre pola wejściowe na ekranie administratora dla menu nawigacyjnych dla określonych pozycji menu. Użyłem filtrów do filtrowania danych wyjściowych frontonu, ale nie danych wyjściowych administratora. Czy jest dostępny filtr do tego celu? Na przykład, chcę usunąć opcję dodawania atrybutu `title` do pozycji menu tylko wtedy, gdy menu jest używane w pozycji 'position-x'. Filtry takie jak `nav_menu_link_attributes` i `wp_nav_menu_args` wydają się filtrować dane wyjściowe z interfejsu użytkownika.


title: Gdzie umieścić niestandardowe pliki PHP w motywie potomnym?

text: Dostosowuję motyw premium WP, aby lepiej pasował do mojej witryny, ale nie mogę do końca dowiedzieć się, co zrobić z plikami PHP, które dostosowuję. Czy po prostu przechodzą do katalogu głównego folderu motywu podrzędnego? A może są umieszczane w podobnej hierarchii folderów, jak w oryginalnym motywie? Jak mogę się upewnić, że plik PHP motywu potomnego jest używany zamiast pliku PHP motywu nadrzędnego (np. header.php)?


title: Czy można mieć sieć witryn BuddyPress, a-la WordPress MU, z jednokrotnym logowaniem?

text: Zamierzamy stworzyć sieć witryn BuddyPress, które mają wspólny projekt, wspólny motyw i pewną wspólną zawartość, ale tę samą bazę użytkowników we wszystkich witrynach sieci. Każdy użytkownik będzie „należeć” do witryny sieciowej, więc chociaż użytkownicy mogą przeglądać wydania London, New York i Sydney, będą musieli „należeć” do jednej z tych witryn: * ldn.mainsite.com * nyc.mainsite.com * syd.mainsite.com Każda witryna BuddyPress oparta na subdomenach będzie zawierać inną zawartość w zależności od lokalizacji, na której jest oparta. Zalogowanie się do sieci oznacza, że są zalogowani we wszystkich witrynach (SSO). Czy jest to możliwe w przypadku WordPress, BuddyPress i/lub WordPress MU, czy będzie to wymagało znacznej pracy nad istniejącym kodem? (A może lepiej byłoby zrobić to od zera na czymś innym?)


title: Wordpress i proste fora

text: To może być irytujące pytanie, ponieważ jest kilka całkiem dobrych odpowiedzi na to pytanie, ale mają 9 miesięcy, więc proszę, ale zostań ze mną. Chciałbym mieć jakiś wkład, który wskaże mi właściwy kierunek. Szukam zintegrowania prostego forum dla projektu Wordpress. Forum musi zawierać: * Proste wątki, podobne do systemu komentarzy WP. * Możliwość wyświetlania tylko strony logowania do forum jako strony głównej forum. * Możliwość wyświetlania tylko forum, na którym użytkownik jest zarejestrowany, lub forum, do którego administrator przypisuje użytkownika. W pewnym sensie przepływ jest następujący: Kliknij stronę forów > Zaloguj się > Przeglądaj tylko jedno określone forum. * Możliwość wyświetlenia niektórych informacji o każdym z użytkowników: telefon, e-mail itp. * Możliwość rejestracji bez przechodzenia do wp-admin To, czego potrzebuję, to znacznie mniej niż to, co zapewnia vBulletin, phpBB lub nawet SimplePress, po prostu potrzebuję miejsca na użytkowników do czatowania na określone tematy i nawiązywania kontaktu. Próbowałem używać bbPress, ponieważ jest tak blisko tego, jak chciałem, ale nie mają możliwości zamykania forów dla określonych grup użytkowników, więc może ktoś może wskazać mi odpowiednie oprogramowanie kombinacji wtyczek. Z góry dziękuję.


title: Niestandardowe typy postów czy całkowicie niestandardowe?

text: Obecnie jestem w trakcie przebudowy mojej witryny. Zdecydowałem się użyć WordPressa jako swojego systemu CMS, zamiast kodować wszystko od zera. To strona akwarystyczna, składająca się z profili gatunkowych; profile roślin; profile gatunków kopalnych; artykuły; posty z wiadomościami i posty na blogu. Moim pierwotnym pomysłem było stworzenie wtyczek dla każdego z nich (z wyłączeniem artykułów/wiadomości/postów na blogu, ponieważ mogę po prostu dodać kategorie postów), przy czym każda wtyczka tworzy nową tabelę bazy danych i dodaje odpowiednie menu administratora (utwórz, wyświetl/zmień) . Natknąłem się dzisiaj na niestandardowe typy postów i zastanawiam się, czy zrobią to za mnie? Byłoby idealnie, gdyby mogli - zaoszczędzili mi dużo czasu i zaoferowali dość przydatną funkcjonalność, której prawdopodobnie nie będę zawracał sobie głowy kodowaniem, jeśli zrobię to w inny sposób (ograniczenia czasowe). Profil gatunkowy jest najbardziej złożonym aspektem terenu. Będzie miał ~20 pól. Kilka pól będzie musiało być polami wyszukiwania, czyli kategorii, która pozwoli użytkownikowi wybrać z listy. Kilka pól będzie musiało być wartościami tablicy, tj. jedno pole tekstowe o nazwie „ph_min” i jedno o nazwie „ph_max”, które są przechowywane w bazie danych jako tablica serializowana. Pola następujące po tych polach tablicy będą wymagały niestandardowego przycisku TinyMCE do wstawienia BBCode, takiego jak [ph_min] (pozwoli nam to napisać: "trzymaj te ryby w [temp_min], jeśli to możliwe, ale nie używaj wody powyżej [temp_max]" podczas posiadanie przycisku konwersji u góry każdego profilu). Czy niestandardowe typy postów są wystarczająco elastyczne, aby wykonać wszystkie powyższe za mnie, czy powinienem po prostu wrócić do podstaw i napisać własne strony administracyjne i tabele bazy danych?


title: Wyłączone trackbacki w Wordpress, ale wciąż otrzymuję trackbacki

text: Wyłączyłem trackbacki w panelu dyskusyjnym zaplecza Wordpress, ale nadal otrzymuję trackbacki. Jak mogę się upewnić, że nie otrzymam żadnych trackbacków?


title: Używanie media-upload.php do przesyłania mp3 za pomocą niestandardowych pól

text: Próbuję użyć okna dialogowego przesyłania pliku Thickbox z niestandardowym polem, aby umożliwić użytkownikowi przesłanie pliku mp3. To, co chcę zrobić, to pobrać adres URL przesłanego mp3 i zapisać go jako postmeta (zapisanie danych, gdy je mam, nie stanowi problemu, ale uzyskanie tego, czego potrzebuję, jest!). Mam kod, aby to działało z obrazem jQuery(function($){ var formfield = null; $('#rps_upload_mp3').click(function() { $('html').addClass('Image '); formfield = $('#rps_mp3_url').attr('name'); tb_show('', 'media-upload.php?type=image&TB_iframe=true'); return false; }); window.original_send_to_editor = window.send_to_editor; window.send_to_editor = function(html) { var fileurl; if( formfield = !null ) { fileurl = $('img', html).attr('src'); $('#rps_mp3_url'). val(fileurl); tb_remove(); $('html').removeClass('Image');formfield = null; } else { window.original_send_to_editor(html); } } }); Oczywiście linia czytająca `fileurl = $('img', html).attr('src');` otrzyma tylko `src` obrazu, a nie mp3, ale nie mogę ustalić, gdzie skrypt pobiera źródło tego obrazu z i nie wiem, jak skierować przesłane mp3. Z góry dziękuję!


title: Dostosuj zapytanie do pojedynczego

text: Buduję event managera. Jednym z plików szablonów, które posiadam, jest events-single.php, który wyświetla pojedyncze zdarzenia. Na dole mam następne i poprzednie zdarzenia używające `next_post_link` i `previous_post_link`. Problem polega na tym, że te funkcje przechodzą przez zdarzenia w kolejności **data publikacji**, a nie **data zdarzenia**. (Mam do tego metaklucz `_fulldate` na CPT). Kiedy budowałem plik events-archive.php, przezwyciężyłem podobny problem, robiąc coś takiego $query = new WP_Query( array ( 'post_type' => 'events', 'orderby' => 'meta_value', 'meta_key' = > '_fulldate', 'zamówienie' => 'ASC') ); Jednak kiedy próbuję tego na events-single.php, wszystkie zdarzenia są wyświetlane na stronie. Docelowo chcę, aby event-single.php zachowywał się jak pojedyncza strona, ale potem pozwalał mi kontrolować zapytanie, jak powyżej. Czy to możliwe, czy będę musiał zrobić drugą pętlę dla linków Poprzedni i Następny?


title: Paginacja WP_Query na pojedynczym niestandardowym.php

text:
## Co chcę zrobić: Ustaw paginację `WP_Query` w pliku szablonu single-custom-post-type.php ## Co zrobiłem 1) Utworzyłem typ posta o nazwie "autorzy". Każdy post w tym typie posta jest indywidualnym autorem. 2) Standardowe strony ekranu edycji postów zawierają listę rozwijaną, która zawiera listę wszystkich postów (autorów) z niestandardowego typu postów autorów. 3) Utworzono szablon single-authors.php, który odpytuje wszystkie posty z metadanymi autora z listy rozwijanej, więc wynikiem jest lista postów, do których przypisany jest ten sam autor (coś w rodzaju archiwum): <?php / / ustaw parametr "paged" (użyj 'page', jeśli zapytanie znajduje się na statycznej stronie głównej) global $paged; /* Potrzebujemy tego tutaj, aby dodać i utrzymać paginację, jeśli szablon jest przypisany do strony głównej*/ if ( get_query_var( 'paged' )) { $paged = get_query_var('paged'); } elseif ( get_query_var( 'strona' ) ) { $paged = get_query_var( 'strona' ); } else { $paged = 1; } $args = array( 'posts_per_page' => 10, 'meta_key' => 'author_select', 'meta_value' => $author_id, 'paged' => $paged, ); $temp = $wp_query; $wp_query = NULL; $wp_query = nowe WP_Query($args); ?> <?php if( $wp_query->have_posts() ) : ?> <?php while ( $wp_query->have_posts() ) : $wp_query->the_post(); ?> <?php // Pomyślnie wyświetla wyniki powyższego zapytania, więc pominąłem kod z tego przykładu. ?> <?php koniec; ?>
 <?php if( get_adjacent_post( false, '', true )) { ?> <?php previous_post_link( '< %link' ) ?> <?php } ?> <?php if( get_adjacent_post( false, '', false )) { ?> <?php next_post_link( '%link >' ) ?> <?php } ?>
 <?php endif; ?> <?php $wp_query = null; $wp_query = $temp; wp_reset_query(); ?> ## Na czym utknąłem Linki do stronicowania nie pojawiają się. Przeprowadziłem pewne badania i odkryłem, że używają zmiennej `$wp_query`, jednak kiedy zmieniłem zmienną zapytania na `$wp_query`, linki się pojawiły, ale po kliknięciu nic nie zrobiły. Jakiś pomysł, gdzie się mylę? ## Edytuj: Aby odpowiedzieć na niektóre z twoich pytań, moje zapytanie pomyślnie wyświetla posty, o które pytam, $author_id ma już wartość, której nie uwzględniłem w tym fragmencie kodu. Podobnie pominąłem rzeczywiste dane wyjściowe w pętli while, ponieważ ta część nie jest problemem. Problem polega na tym, że muszę podzielić na strony treść, która już istnieje w tym pojedynczym poście. Celem tej funkcjonalności było umożliwienie postom posiadania niestandardowych autorów (poza wbudowanym systemem Użytkownicy), a celem tego szablonu jest wypisanie wszystkich postów dla danego autora (który już działa).


title: Umieszczanie wyników autouzupełniania tam, gdzie chcę je w kodzie HTML

text: Mam kod w pliku functions.php, który tworzy listę automatycznie sugerowanych elementów na podstawie tekstu formularza: <? add_action('wp_enqueue_scripts', 'se_wp_enqueue_scripts'); funkcja se_wp_enqueue_scripts() { wp_enqueue_script('sugeruj'); } add_action('wp_head', 'se_wp_head'); function se_wp_head() { ?> <script type="text/javascript"> var se_ajax_url = '<?php echo admin_url('admin-ajax.php'); ?>'; jQuery(dokument).ready(function() { jQuery('#love-input').suggest(se_ajax_url + '?action=se_lookup', { onSelect: function() { thevalue = this.value; thevalue = thevalue.split (' ('); jQuery('#love-input').val(thevalue[0]); } }); }); </script> <?php } add_action('wp_ajax_se_lookup', 'se_lookup'); add_action('wp_ajax_nopriv_se_lookup', 'se_lookup'); function se_lookup() { global $wpdb, $wp_query; $search = like_escape($_REQUEST['q']); $query = 'SELECT ID,post_title FROM'. $wpdb ->posts ' WHERE post_title LIKE \'%' . $search . '%\' AND post_type = \'loves\' AND post_status = \'publish\' ORDER BY post_title ASC'; foreach ($wpdb->get_results( $query) as $row) { $post_title = $row->post_title; $id = $row->ID; $post_count = $wpdb->get_var(" SELECT CO UNT(*) FROM $wpdb->postmeta GDZIE post_id = $id "); echo $tytuł_postu . ' (' . $liczba_post . ')' . "\n"; } umiera(); } ?> Próbuję umieścić to pole pod polem tekstowym, ale wyjście to zawsze z klasą "ac_results", która pojawia się na samym dole html. Problem w tym, że nie wiem, skąd pochodzi ta i klasa? Nie ma go w adminajax.php i nie wywołuję żadnych innych plików... czy też wordpress robi to automatycznie? Jak mogę dokładnie określić, gdzie ma się pojawić w moim html?


title: Utworzyć „fałszywą” stronę nadrzędną dla hierarchii na liście stron?

text: **Czy można ustawić „fikcyjną” stronę - tylko tytuł strony, który pojawia się w wykazie strony oraz strona, która nie jest edytowalna i nie ma ślimaka?** To pytanie jest bardziej hipotetyczne, ponieważ nie wiem od czego zacząć kod lub określić najlepszą drogę. Chciałbym mieć możliwość skonfigurowania takiej hierarchii nadrzędny/podrzędny na liście stron, aby strony podrzędne były podrzędne, ale strona nadrzędna to tylko symbol zastępczy, a nie rzeczywista strona. Powód: dla użytkowników bez dużego doświadczenia w WordPress, pomocne jest organizowanie stron w hierarchii nadrzędny/podrzędny – zwłaszcza jeśli jest wiele stron – tak, aby powiązane strony były lepiej zorganizowane na liście stron. Użytkownicy mogą również wizualizować budowanie menu, jeśli strony podrzędne są zorganizowane w ramach rodzica. Problem polega na tym, że strona nadrzędna może być edytowalna i nie jest częścią ustalonej zawartości strony, co z mojego doświadczenia wynika, że prowadzi to do dezorientacji użytkownika. Mogę użyć funkcji, aby usunąć edytor dla określonej strony i użyć całości w pliku robots.txt, aby nie indeksować fikcyjnego rodzica, ale to oznacza zmianę tych na nowego rodzica. A ta strona nadrzędna nadal ma slug, nawet jeśli jest zablokowana, _Więc czy istnieje sposób na utworzenie funkcji, która tworzy tytuł strony i z możliwością przypisania stron podrzędnych, ale strona nadrzędna jest niedostępna, niemożliwa do edycji i nie ma slug? _ ![tutaj wprowadź opis obrazu](http://i.stack.imgur.com/hAlh5.png)


title: Jak sprawdzić, czy identyfikator kategorii istnieje na stronie opcji motywu?

text: Próbowałem stworzyć stronę opcji motywu (zaczynając od przykładowej strony opcji motywu z programu themeshaper) i chcę sprawdzić, czy lista kategorii oddzielonych przecinkami jest prawidłowa. Usuń duplikaty, usuń nieistniejące kategorie, ale to nie działa. :( Usuwa ostatnią wartość, jeśli sprawdzam za pomocą empty(): function theme_options_validate( $input ) { if ($input['slidercats'] != '') { $slidercats = $input['slidercats']; $ slidercats_array = explode( ',', $slidercats ); $slidercats_array = array_unique( $slidercats_array ); $slidercats_array = array_map('intval', $slidercats_array ); foreach($slidercats = $_array) $i get_category($i); // cat_ID if ( empty( $cat ) ) unset($slidercats_array[$i]); } $input['slidercats'] = implode(",", $slidercats_array); } return $input ; } http://pastebin.com/xR1aq6mD I usuwa wszystkie wartości oprócz jednej z `term_exists(id, 'category');` function theme_options_validate( $input ) { // global $select_options, $radio_options; // Zmień na liczbę całkowitą $input['slidercount'] = (int)$input['slidercount']; if ($input['slidercount'] < 1 || $input['slidercount'] > 50) $input['slidercount'] = 10; // Utwórz tablicę z ciągu, usuń duplikaty, zmień wszystkie wartości na liczby całkowite, usuń nieistniejące kategorie, utwórz ciąg z tablicy if ($input['slidercats'] != '') { $slidercats = $input['slidercats'] ; $slidercats_array = explode( ',', $slidercats ); $slidercats_array = array_unique( $slidercats_array ); $slidercats_array = array_map('intval', $slidercats_array ); foreach($slidercats_array AS $i => $value) { $cat = term_exists($i, 'category'); // cat_ID if ( ! $cat ) unset($slidercats_array[$i]); } $input['slidercats'] = implode(",", $slidercats_array); } return $wejście; } http://pastebin.com/edx8F1YZ Problemem jest `foreach`, ale utknąłem i nie mam php guru. Może ktoś mógłby mi podpowiedzieć jak to rozwiązać...


title: nazwa użytkownika w przepisanym adresie URL, jak używać go w szablonie

text: na mojej stronie profile użytkowników są dostępne na /user/xxx. Teraz stworzyłem regułę przepisywania i wszystkie linki użytkowników są obsługiwane na stronie szablonu. Ale jak mogę uzyskać dostęp do xxx (użytkownika) w pliku szablonu? Strona powinna wyświetlać profil xxx. Zasady przepisywania: add_filter( 'query_vars', 'wpleet_rewrite_add_var' ); funkcja wpleet_rewrite_add_var( $zmienne) { $zmienne[] = 'użytkownik'; zwróć $zmienne; } add_rewrite_tag( '%user%', '([^&]+)' ); add_rewrite_rule( '^user/([^/]*)/?', 'index.php?user=$matches[1]', 'top' ); add_action( 'template_redirect', 'wpleet_rewrite_catch' ); funkcja wpleet_rewrite_catch() { globalne $wp_query; if ( array_key_exists( 'user', $wp_query->query_vars )) { include (ścieżka_szablonu . '/user-profile.php'); Wyjście; } }


title: Liczba kategorii wewnątrz linku

text: Czy możliwe jest użycie `wp_list_categories` ustawionej liczby postów w kategorii w `href`?


title: Jak dołączyć plik dla administratora i 2 strony bez ładowania w innych częściach witryny?

text: Muszę dwukrotnie dołączyć plik. raz w adminie, drugi w jego komponencie. if( is_admin() || is_the_component() ) require... Ale w klasie jest duża funkcja do rejestrowania rzeczy, potrzebna tylko przy aktywacji wtyczki. Co więcej, chcę, aby klasa była super GLOBALNA. $GLOBALS['dane_użytkownika'] = nowa Moja_Klasa(); To sprawia, że czuję, że jest to trochę za ciężkie, aby nosić dużą funkcję rejestracji w całej witrynie. Czy należy ponownie rozmieścić klasę, aby wykluczyć funkcję?


title: Wymień autorów, którzy napisali posty w kategorii

text: Jak mogę wyświetlić listę autorów postów w kategorii w WordPressie? Na moim blogu mam trzech autorów i chcę wymienić, kto napisał posty w danej kategorii. Na przykład: NAZWA KOTA: AUTOR INTERNETOWY: JAN, KOWAL, ALEX NAZWA KOTA: AUTOR TECHNICZNY: JAN NAZWISKO KOTA: AUTOR KODU: ALEX


title: Wyświetlać datę rejestracji komentatora w komentarzach?

text: Czy istnieje możliwość wyświetlenia w komentarzu daty rejestracji (zarejestrowanej) użytkownika. Powiedzmy, że mam napisany artykuł, zarejestrowani użytkownicy A, B, C i D zostawili komentarz do mojego artykułu. Domyślnie mogę wyświetlić datę komentarza, imię i nazwisko komentującego oraz adres e-mail . Chcę również wyświetlić datę rejestracji komentatora. Jak to zrobić?


title: Jak wyświetlić listę postów, które pojawiają się w dwóch kategoriach?

text: Chciałbym wyświetlić listę wszystkich postów, które pojawiają się w aktualnie przeglądanej kategorii, które są również opublikowane w drugiej kategorii. Przykładowe zdjęcia : LINK Na przykład lista typowych postów między kategorią Nagłówek a kategorią Media, jeśli Media są aktualnie przeglądane.


title: Potrzebujesz pomocy w „oczyszczaniu” niestandardowej funkcji, która wciąga informacje o kategorii do klasy ciała

text: Nie jestem pewien, czy "odkażanie" jest naprawdę poprawnym wyrażeniem do tego celu, ale było to najlepsze, o jakim mogłem wymyślić ... w każdym razie, oto problem: Moja funkcja działa świetnie w ten sposób ... // dodaj identyfikator kategorii do body & post class function category_id_class($classes) { global $post; foreach((get_the_category($post->ID)) as $category) $classes [] = $category->cat_name; zwróć $klasy; } add_filter('post_class', 'category_id_class'); add_filter('body_class', 'category_id_class'); Działa to świetnie, dopóki użytkownik nie wprowadzi kategorii, takiej jak „Kategoria 1” z _spacją_. Spacje są oczywiście niepożądane jako klasy CSS, więc gdybyśmy mogli dodać myślnik, aby zastąpić spację, która byłaby idealna - tylko nie wiesz, jak to zrobić? Dziękuję!


title: Używanie ślimaka portfolio_category w adresie URL wordpress

text: Nie będę kłamać - nie znam php, ale lubię kopać, próbując znaleźć sposoby na dostosowanie motywów, aby zachowywały się tak, jak chcę. Każda pomoc byłaby bardzo mile widziana. Co staram się zrobić: W motywie wordpress, którego używam, znajduje się sekcja, która umożliwia publikowanie portfolio. Adres URL dowolnej strony portfolio to: **mysite.com/portfolio/example-portfolio** Podczas tworzenia nowego portfolio masz możliwość przypisania kategorii portfolio, podobnie jak podczas tworzenia nowego Poczta. Chciałbym, aby adres URL mojego portfela wyglądał następująco: **mojastrona.com/portfolio-category/przykład-portfolio** Zaznaczyłem obszar kodu, który, jak podejrzewam, można edytować, aby to umożliwić, ale to jest gdzie moja przygoda się niestety kończy :( Oto kod: function mysite_post_types() { register_post_type('portfolio', array( 'labels' => array( 'name' => _x('Portfolios', 'Ogólna nazwa typu posta', MYSITE_ADMIN_TEXTDOMAIN ), 'singular_name' => _x('Portfolio', 'Pojedyncza nazwa typu posta', MYSITE_ADMIN_TEXTDOMAIN ), 'add_new' => _x('Dodaj nowy', 'portfolio', MYSITE_ADMIN_ _TemDMAd => 'Dodaj nowe portfolio', MYSITE_ADMIN_TEXTDOMAIN ), 'edit_item' => __('Edytuj portfolio', MYSITE_ADMIN_TEXTDOMAIN ), 'new_item' => __('Nowe portfolio', MYSITE_ADMIN_TEXTDOMAIN ), 'view_item' Wyświetl portfolio' => __(' , MYSITE_ADMIN_TEXTDOMAIN ), 'search_items' => __('Przeszukaj portfele', MYSITE_ADMIN_TEXTDOMAIN ), 'not_found' => __('Nie znaleziono portfeli', MYSITE_ADMIN_TEXTDOMAIN ), 'not_found_in_trash' => __('Nie znaleziono portfeli w Koszu', TEX_DOMAIN parent_item_colon' => '' ), 'singular_label' => __('Portfolio', MYSITE_ADMIN_TEXTDOMAIN ), 'public' => true, 'exclude_from_search' => false, 'show_ui' => true, 'capability_type' => 'post ', 'hierarchical' => true, 'rewrite' => array( 'with_front' => false, 'slug' => 'products' ), opracowałem jak zmienić 'mysite.com/ **portfolio** /example-portfolio' na 'mysite.com/ **produkty** /example-portfolio' (w ostatniej linii w przykładzie), ale nie chcę na tym poprzestać! Ponieważ możesz kategoryzować portfele, chciałbym to wykorzystać w generowanych adresach URL. Jest to z pewnością możliwe bez zbytniego nakładu pracy i byłbym bardzo wdzięczny, gdyby ktoś z większą wiedzą na temat php niż ja (co nie wymaga dużo!) pozwolił mi się na nich oprzeć w poszukiwaniu rozwiązania


title: Tworzenie lepszego środowiska wyszukiwania w wielu witrynach

text: Prowadzimy wielostronny blog wordpress o następujących cechach: 1. witryna „domowa” [witryna #1] z dziesiątkami stron, kilkoma niestandardowymi typami postów, własnym blogiem itp. 2. niestandardowe witryny partnerskie [witryna 2-N ] każdy z własnym blogiem i (przynajmniej) stroną „o nas”. Przeważnie prosty zestaw stron i postów. Chciałbym stworzyć dobre środowisko wyszukiwania dla użytkowników, którzy próbują znaleźć strony konkretnego partnera: * wyszukiwanie treści w witrynie 1 jest wysokiej jakości (domyślne wyszukiwanie wordpress nie wydaje się być zbyt dobre) * wyszukiwanie zwraca również strony z witryny 2-N, tylko w przypadku blogów, które są publiczne * specjalne pola niestandardowe postów w witrynach 2-N są indeksowane * jeśli treść znajduje się na stronie z informacjami w witrynie 2-N, sugeruje się umieszczenie strony głównej witryny w osobnym obszarze. tj. są to „wyniki dla partnerów”, a nie „wyniki dotyczące treści” * nie musimy indeksować tagów, kategorii itp. w rzeczywistości na podstawie tego, w jaki sposób (nad) ich używamy, mogą one przeszkadzać w prawidłowym wyszukiwaniu Jestem techniczny i może zbudować coś przy użyciu dowolnych dostępnych interfejsów API, na przykład niestandardowego wyszukiwania Google itp. Ale chciałbym, jeśli istnieje już wtyczka wyszukiwania w całej sieci, która pozwoli mi to skonfigurować (lub przynajmniej dać mi przewagę na starcie i API.) Wtyczki komercyjne są w porządku. Czy są jakieś dobre rozwiązania lub czy jest to najlepsza opcja?


title: Pokaz slajdów z miniaturami

text: Mam tutaj proste demo, aby zilustrować mój problem. http://www.ttmt.org.uk/wordpress/ Jest to pokaz slajdów z obrazkami korzystający z wtyczki cyklu - http://jquery.malsup.com/cycle/ Obrazy są dodawane bezpośrednio do treści strony i div zawierający treść jest przekazywany do funkcji cycle. Mój problem polega na tym, że chciałbym mieć miniatury zdjęć pod spodem. Widziałem kilka wtyczek WordPress, które to robią, ale WSZYSTKIE wymagają, aby obrazy miały te same wymiary, aby działały. Moje obrazy mają tę samą wysokość, ale inną szerokość. Czy istnieje wtyczka, która może to zrobić z obrazami o różnych szerokościach. Jeśli nie, może ktoś polecić, jak mogę to zrobić. Naprawdę mam nadzieję, że jest to przynajmniej możliwe - wydaje się to takie proste, ale nigdzie nie mogę znaleźć rozwiązania.


title: Stwórz stronę w stylu dashboardu (nie Wordpress dashboard) - czy istnieje motyw?

text: Próbuję dowiedzieć się, czy są jakieś motywy, których mógłbym użyć do stworzenia strony internetowej z pulpitem nawigacyjnym. (w zasadzie chcę stworzyć coś, co wskazywałoby na wszystkie usługi pomocnicze, z których korzystam - kopie zapasowe, analityka, obrazy stockowe, host internetowy itp.) Odpowiedź Google jest praktycznie niemożliwa - ponieważ raz użyjesz terminu dashboard wraz z Wordpressem każdy wynik odnosi się do pulpitu administracyjnego Wordpress (podczas gdy chcę tylko utworzyć witrynę/stronę) Czy ktoś zna motyw w stylu pulpitu nawigacyjnego?


title: Następny i poprzedni link w niestandardowym wpisie wpisz w tym samym terminie taksonomii

text: Mam niestandardowy typ wpisu `name->('portfolio')`, z nazwą taksonomii `'portfolio_category'`. To, czego chcę, to dodać następne i poprzednie linki do jego pojedynczego pliku strony, którym jest single-portfolio.php. Kiedy klikam jeden z linków, powinien on przekierowywać do następnego lub poprzedniego posta w tym samym typie posta i w tym samym terminie taksonomicznym. Użyłem `next_post_link()` i `previous_post_link()`, ale wygląda na to, że działa tylko w jednym poście, ale nie w jednym niestandardowym typie posta. Wszelkie sugestie będą bardzo mile widziane.


title: Nie można zalogować się do witryny Wordpress po zmianie .htaccess ze względów bezpieczeństwa

text: To jest oryginalny plik .htaccess na moim lokalnym komputerze # Blokuj pliki tylko do dołączania. RewriteEngine On RewriteBase / RewriteRule ^wp-admin/includes/ - [F,L] RewriteRule !^wp-includes/ - [S=3] RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [ F,L] RewriteRule ^wp-includes/theme-compat/ - [F,L] # POCZĄTEK WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] # przesłanych plików RewriteRule ^( [_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [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 [LUB] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^ - [ L] RewriteRule ^[_0-9a-zA-Z-]+/(wp-(content|admin|includes).*) $1 [L] RewriteRule ^[_0-9a-zA-Z-]+/(.* \.php)$ $1 [L] Przepisz regułę . index.php [L] </IfModule> # KONIEC WordPress To jest nowe ustawienie dla witryny internetowej na serwerze. Pomóż mi, ponieważ nic nie wiem o tym kodzie .htaccess. Którą część muszę zdjąć, a którą zachować, aby strona działała ponownie tak samo jak lokalnie, ale oczywiście z dobrze zabezpieczoną linią kodu? # Zablokuj tylko pliki dołączane. RewriteEngine On RewriteBase / RewriteRule ^wp-admin/includes/ - [F,L] RewriteRule !^wp-includes/ - [S=3] RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [ F,L] RewriteRule ^wp-includes/theme-compat/ - [F,L] #wyłącz hotlinking obrazów z zabronioną lub niestandardową opcją obrazu RewriteEngine na RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http: //(www\.)?twojadomena.com/.*$ [NC] #RewriteRule \.(gif|jpg)$ – [F] RewriteRule \.(gif|jpg)$ http://www.twojadomena.com /stealingisbad.gif [R,L] RewriteEngine On RewriteCond %{REQUEST_METHOD} POST RewriteCond %{REQUEST_URI} .wp-comments-post\.php* RewriteCond %{HTTP_REFERER} !.*yourblog.com.* [OR] RewriteCond {HTTP_USER_AGENT} ^$ RewriteRule (.*) ^http://%{REMOTE_ADDR}/$ [R=301,L] # protect wpconfig.php <Pliki wp-config.php> zamówienie zezwól, odmów odmów z ll </Files> # wyłącz przeglądanie katalogów Opcje Wszystkie -Indeksy <Pliki ~ “^.*\.([Hh][Tt][Aa])”> rozkaz zezwól, odmów odmowa ze wszystkich spełnia wszystkie </Files> rozkaz odmowy ,allow Odmów wszystkim <Files ~ ".(xml|css|jpe?g|png|gif|js)$"> Zezwól wszystkim </Files> # Chroń .htaccess <files .htaccess=""> kolejność allow ,odmów odmowy wszystkim </files> # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] # przesłanych plików RewriteRule ^([_0-9a-zA-Z-]+ /)?files/(.+) wp-includes/ms-files.php?file=$2 [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 [LUB] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^ - [L ] RewriteRule ^[_0-9a-zA-Z-]+/(wp-(content|admin|includes).*) $1 [L] RewriteRule ^[_0-9a-zA-Z-]+/(.*\ .php)$ $1 [L] Przepisz regułę . index.php [L] </IfModule> # KONIEC WordPress


title: Jak importować kategorie z opisami z pliku CSV?

text: Jak zaimportować listę nowych kategorii i opisów kategorii z pliku wartości oddzielonych przecinkami?


title: Automatycznie usuwać domyślne posty i strony w instalacji motywu?

text: Czy istnieje sposób na automatyczne usuwanie domyślnych postów i stron Wordpress podczas aktywacji motywu motywu?


title: Jak przekierować adres URL z parametrami?

text: Moje przekierowanie działa do momentu dodania parametrów na końcu źródłowego adresu URL. Jaki będzie właściwy sposób zaimplementowania przekierowania, gdy celem będzie inny adres URL, ale chcę przekazać parametry bez zmian. Post z parametrami przechodzi na stronę 404 Ten sam post bez parametrów przekierowuje poprawnie Używam następującej wtyczki do przekierowań: http://wordpress.org/extend/plugins/redirection/


title: Jak wyświetlić wyróżniony obraz posta za pomocą tego kodu?

text: więc jest to kontynuacja innego pytania, które musiałem ostatnio zadać. Chciałem rozpocząć kolejną rozmowę, ponieważ technicznie odpowiedziałem na moje ostatnie pytanie. Ostatnie pytanie jest tutaj: Wyświetl miniaturę posta bez wyróżnienia obrazu, jeśli chcesz dowiedzieć się, gdzie byłem i gdzie jestem teraz. Kiedyś wywoływałem miniaturę posta w ten sposób: if ( has_post_thumbnail() ) { the_post_thumbnail(); Bez problemów. Potem zacząłem myśleć, że będę go potrzebować, aby mój klient nie musiał ustawiać polecanego obrazu dla każdego postu. Cóż, bez wyróżnionego obrazu, była więc miniatura wpisu wyświetlana we fragmencie posta. Tak więc, z powodu odpowiedzi, którą otrzymałem w ostatnim pytaniu (link zamieszczony powyżej), teraz używam wtyczki Get The Image wraz z tym: if ( has_post_thumbnail() ) { the_post_thumbnail(); } else { get_the_image( array('size' => 'thumbnail', 'image_class' => 'wp-post-image')); } Teraz, jeśli nie wybrano wyróżnionego obrazu dla posta, wybiera on pierwszy obraz z galerii postu, ponieważ zawsze będzie galeria dla każdego posta. Problem polega na tym, że w samym poście ustawiłem go tak, aby wyróżniony obraz był wyświetlany w pełnym rozmiarze na środku strony. Dzięki temu w moim pliku functions.php: // Ten motyw wyświetla pełnowymiarowy wyróżniony obrazek na stronie Posta function InsertFeaturedImage($content) { global $post; $oryginalna zawartość = $zawartość; if ( current_theme_supports( 'post-miniatur' ) ) { if ((is_page()) || (is_single())) { $content = the_post_thumbnail('page-single'); $zawartość .= $oryginalna_zawartość; } } return $treść; } add_filter( 'the_content', 'InsertFeaturedImage' ); Zanim dodałem w else { get_the_image( array('size' => 'thumbnail', 'image_class' => 'wp-post-image')); } Działa dobrze. Teraz wyświetla tylko małą miniaturę w górnej środkowej części strony posta. Powinien wyświetlać obraz w pełnym rozmiarze. Wszystko to doprowadziło mnie do dwóch głównych problemów, z którymi się teraz borykam. 1) Czy mogę edytować ten kod w pliku functions.php, aby nadal wyświetlać polecany obraz w pełnym rozmiarze. Oraz 2) Co jeśli nie wybrano wyróżnionego obrazu dla posta, czy mogę również sprawić, by kod functions.php wyświetlał pierwszy obraz galerii posta w pełnym rozmiarze? Naprawdę mam nadzieję, że to nie jest zbyt mylące. Odwiedź http://dependablecarcompany.com i zobacz fragment posta zatytułowany „1991 GMC Sierra”. Ten post nie ma polecanego obrazu, ale kciuk wciąż jest wyświetlany dzięki wtyczce Get The Image. Ale kiedy faktycznie przejdziesz do właściwego posta, zobaczysz, że górny, środkowy obraz przedstawia kciuk. Powinien to być obraz w pełnym rozmiarze. Dziękuję bardzo każdemu, kto może przez to wszystko przejść i podziel się dla mnie kilkoma wskazówkami!


title: is_home i is_front_page problem warunkowy

text:
Mam ten fragment w pliku "portfolio-loop.php". Aby wyświetlić pętlę na pierwszej stronie i na innych stronach, używam get_template_part. Mam to w pętli: <?php if( !is_home() || !is_front_page() ) { ?>
<?php the_time('F Y'); ?>
 <?php endif } ?> Wygląda na to, że nie mogę wyłączyć pierwszej strony. Czy to możliwe, ponieważ jest we własnym szablonie? **edytuj** Ok Poprawiłem niektóre z moich błędów semantycznych dzięki s_ha_dum i Tomowi Nowellowi. Próbowałem następujących odmian: <?php if ( !is_home() && !is_front_page() ) { ?>  <?php } else { ?>
<?php the_time( „Fj, Y”); ?>
 <?php } ?> //rezygnacja z is_home() i próba uproszczenia go jak to tylko możliwe <?php if(!is_front_page()) { ?>
<?php the_time('F j, Y'); ?>
 <?php } ?> Nadal nie mogę ukryć czasu na pierwszej stronie. W najlepszym razie '<--nada-->' pojawi się zarówno na mojej stronie domowej (home.php), jak iw moim archiwum (category-blog.php). Czy moja niestandardowa strona kategorii jest również postrzegana jako strona główna? **edytuj 2** To, co próbuję zrobić w prostym języku angielskim: Mam pętlę na mojej stronie głównej (statyczny, home.php) wyświetlającą trzy moje najnowsze posty na blogu za pośrednictwem get_template_part. Ta sama pętla jest używana do mojego listingu category-blog.php/archive, ale pokazuje 10 ostatnich postów. Nie chcę pokazywać daty/godziny na pierwszej stronie, aby zachować czystość układu, tylko na innych stronach, na których wyświetlana jest ta pętla.


title: Wiele pętli na niestandardowej stronie głównej

text:
Przeczytałem wiele postów tutaj i w Internecie. Nie widzę, dlaczego moje pętle nic nie zwracają (lub właściwe zapytanie). Oto mój kod dla wielu pętli na niestandardowej stronie głównej. Każdy wie, dlaczego moje pętle nie działają - każda pomoc byłaby bardzo mile widziana. Celem pętli jest również zwrócenie jednego artykułu ze stron (pierwsza pętla z informacją o funkcji 1 i w drugiej pętli o funkcji 2) strona powinna zostać opublikowana i powinna być najnowsza (w przypadku dodawania przez klienta zduplikowanych informacji - czy to możliwe).
 <?php // Pierwsze zapytanie $first_feature = new WP_Query(array( 'post_status' => 'publish', 'post_type' => 'page' , 'order' => 'DESC', 'posts_per_page' => '1', 'pagename' => 'feature1' )); // Pętla while($first_feature->have_posts()) : $first_feature->the_post(); ?>

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

   <?php if ( has_post_thumbnail()) : ?>
   <a href="<?php the_permalink(); ?>" class="icons">   <?php the_post_thumbnail('medium', array('class' => 'border')); ?>
 <?php endif; ?>

<?php mwwp_excerpt('feature1_custom_post'); ?>

 <a href="<?php the_permalink (); ?>" class="reading">Przeczytaj cały artykuł
  <?php koniec; ?> <?php wp_reset_postdata(); // zresetuj zapytanie ?>

 <?php // Drugie zapytanie $second_feature = new WP_Query(array( 'post_status' => 'publish', 'post_type' => 'page', 'order' => 'DESC', 'posts_per_page' => ' 1', 'nazwa_strony' => 'cecha2' )); // Pętla while($second_feature->have_posts()) : $second_feature->the_post(); ?>

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

   <?php if ( has_post_thumbnail()) : ?>
   <a href="<?php the_permalink(); ?>" class="icons">   <?php the_post_thumbnail('medium', array('class' => 'border')); ?>
 <?php endif; ?>

<?php mwwp_excerpt('feature2_custom_post'); ?>

 <a href="<?php the_permalink (); ?>" class="reading">Przeczytaj cały artykuł
  <?php koniec; ?> <?php wp_reset_postdata(); // zresetuj zapytanie ?>


title: Dołączanie pliku zewnętrznego do posta (i używanie przetworzonych ścieżek)

text:
Mam post, który zawiera stosunkowo dużą tabelę, która jest często aktualizowana. Zamiast używać (wolniejszego) interfejsu sieciowego do aktualizacji posta za każdym razem, zainstalowałem jedną z wtyczek „uruchom PHP” i umieściłem w treści tabeli krótki fragment kodu PHP, który otwiera zewnętrzny plik na serwerze i umieszcza go w tabela w poście. W ten sposób mogę w razie potrzeby edytować plik lokalnie w responsywnym edytorze tekstu, a zmiana zostanie odzwierciedlona natychmiast po udostępnieniu strony (i bez konieczności wprowadzania zmian w żadnej z tabel WordPress). Działa to całkiem nieźle i ogólnie jestem z tego zadowolony, ale jest mały haczyk w tym, że ścieżka do zewnętrznego pliku tekstowego odnosi się do sklepu na serwerze (użyłem menedżera biblioteki multimediów do jej przechowywania, a ponieważ Używam funkcji wielu witryn, a PHP jest po stronie serwera, ścieżka ma postać `"wp-content/blogs.dir/1/files/2011/02/foobar.txt"`). Ścieżki do innych plików, takich jak obrazy, których używa kod po stronie klienta, taki jak JavaScript, są względne w stosunku do adresu URL. Oczywiście nie jest to idealne rozwiązanie z kilku powodów. Mam więc dwa pytania: 1. Czy istnieje lepszy sposób na dołączenie zewnętrznej treści do posta niż użycie PHP? 2. (cóż, 1b.) Jeśli nie, to czy istnieje lepszy – tj. bardziej spójny – sposób dostępu do plików? (To jest sposób, aby PHP używało ścieżek względnych URL zamiast ścieżek względnych do serwera?) **Wyjaśnienie:** W poście mam coś takiego (kod jest poza moją głową, więc zignoruj wszystkie błędy): …

foo	bar

 <?php $fn ="wp-content/blogs.dir/1/files /2011/02/foobar.txt"; $fh =fopen($fn, "r"); $data=fread($fh, rozmiar pliku($fn)); //brak clearstatcache; Plik TXT nie jest aktualizowany *że* często print($data); fzamknij($fh); ?>

 … Gdzie plik tekstowy zawiera coś takiego:
Blah	123

Foobar	asd

Test	555
 … Gdy strona jest obsługiwana, PHP w poście jest wykonywany i pobiera wiersze tabeli z pliku zewnętrznego, zbierając wszelkie zmiany, które wprowadziłem zewnętrznie, bez konieczności przechodzenia przez WordPress, aby to zrobić. Istnieje również JavaScript przed tabelą, który zajmuje się ustawianiem niektórych obrazów zgodnie z instrukcją switch — obrazy zostały zaimportowane z biblioteką multimediów — coś takiego: przypadek 'a': element.style.backgroundImage='url(/blogs/foobar /files/2011/02/A.png)'; przerwanie; przypadek 'b': element.style.backgroundImage='url(/blogs/foobar/files/2011/02/B.png)'; przerwanie; …


title: Galeria JQuery Wordpress

text: Chciałbym wiedzieć, czy da się stworzyć galerię taką jak ta za pomocą WordPressa: http://jfdelsalle.com/naaman.swf Czy jest jakaś wtyczka blisko tego?


title: Korzystanie z jQuery .after wewnątrz pętli

text:
Mam trochę javascript, który dynamicznie doda statyczny post do pętli. Skrypt wykorzystuje metodę jQuery 'after' i na statycznej stronie działa pięknie, ale wewnątrz pętli nie otrzymuję żadnych wyników. Czy ktoś może zobaczyć, co tu robię źle? Czy WP nie pozwala na wstawianie DOM w pętli? function newTile(){ var adTile = "

 to jest test

"; var adLoc = 5; var tiles = $('#article-tile:nth-child('+adLoc+')'); $(kafelki).after(kafelekreklamy); }


title: query_vars we wtyczce podczas korzystania z niestandardowych permalinków

text: Próbuję wykonać następujące czynności, muszę uzyskać kategorię bieżącej strony na poziomie wtyczki, więc zanim przejdzie do `archive.php` lub `single.php`, więc mam wtyczkę do tego i na podstawie kategorii to przełącza motywy .. jednak mam trudności z uzyskaniem kategorii na poziomie wtyczki, gdy używam niestandardowych permalinków, które nie mają ciągu zapytania (tj. Przyjazne adresy URL seo) Więc jeśli przejdę do domyślnych permalinków, mogę uzyskać kategorię w obrębie wtyczka przy użyciu $wp_query->query_vars['cat']; Jednak z niestandardowymi permalinkami, które zwracają wartość null i nie jestem w stanie wymyślić innego sposobu na zrobienie tego, proszę, czy ktoś może pomóc? Wielkie dzięki Waseem


title: Użyj wtyczki lub niestandardowego typu postu, aby uzyskać funkcję oceny wyników w grze

text: Przez ostatnie kilka dni pracowałem nad wtyczką, która dodaje funkcjonalność przechowywania wyników z gry w paintball. Kiedy uda mi się go ukończyć, chcę przedstawić graczom formularz, aby mogli dodać takie rzeczy, jak: trafienia, zgony, wygrane, przegrane, lokalizacja, rola i data. To trafia do niestandardowej tabeli w bazie danych WP. Otrzymają również stronę profilu, która pokazuje 5 ostatnich rekordów, stosunek wygranych do przegranych i tym podobne. Administrator ma również menu, które pokazuje tę tabelę i powinien być w stanie manipulować datą (w przypadku nadużycia). Doszedłem dalej z wtyczką, wtedy pomyślałem. Ekran administratora jest obecny i ładuje informacje z tabeli (sortowanie niektórych kolumn). Ale nie mam jeszcze działającej funkcji edycji lub usuwania. Co dało mi do myślenia. Pracowałem już wcześniej z niestandardowymi typami postów. Czy nie będzie łatwiej dodać tę wtyczkę do niestandardowego typu posta? Czy użytkownicy mogą wysyłać do niego dane z front-endu? Czy mogę zapytać o dane i zrobić z nimi prostą matematykę? Administratorzy mogą dość łatwo zmienić dane za pomocą niestandardowego typu postu, jeśli się nie mylę. Jedyne wady, o których teraz myślę, to problemy z motywem. Myślę, że łatwiej jest pokazać dane z niestandardowej tabeli za pomocą wtyczki za pomocą krótkich kodów, a następnie zintegrować niestandardowe posty w motywie? Czy mogę utworzyć krótki kod dla niestandardowego typu postu? Czy powinienem więc zrezygnować z wtyczki i wybrać niestandardowy typ posta? Chciałbym w końcu móc udostępnić tę wtyczkę, więc jeśli skorzystam z niestandardowego typu, prawdopodobnie skończę z wtyczką, która umożliwia niestandardowy typ postu.


title: paginate_comments_links() nie działa

text:
Używam paginate_comments_links(), aby pobrać wszystkie komentarze bieżącego użytkownika: <?php global $current_user; get_currentuserinfo(); $userid = $bieżący_użytkownik->ID; $args = array( 'user_id' => $userid, 'number' => 2, ); $komentarze = get_comments($args); foreach($comments as $comment) : echo('
' . $comment->comment_date . '
' . $comment->comment_content); na każdym kroku; paginate_comments_links(); ?> Jednak paginacja się nie wyświetla. Zamieściłem 7 komentarzy, więc spodziewałem się zobaczyć 2 komentarze na stronie, w sumie 4 strony. Jednak w ogóle nie pojawia się paginacja. Włączenie błędów w php ujawnia: Uwaga: Właściwość niezdefiniowana: WP_Query::$comments w /wp-includes/comment.php w wierszu 788 Gdzie robię źle?


title: Jak zdobyć posty, które muszą pasować do obu niestandardowych taksonomii?

text: Szukałem na stronie stackexchange odpowiedzi na to pytanie. Jednak nie znalazłem żadnych postów, które pomogą mi rozwiązać następujący problem: Mam 2 niestandardowe taksonomie o nazwach **tax1** i **tax2** Chcę utworzyć argumenty dla WP_Query, które muszą spełniać następujące warunki: - The posty muszą znajdować się zarówno w **tax2**, jak i w **tax2** — posty są w niestandardowym post_type **posttype1** Próbowałem utworzyć następujące argumenty, aby uzyskać posty, ale nie działało to tak, jak się spodziewałem: $query_args = array( 'post_type' => 'posttype1', 'ignore_sticky_posts' => 1, 'posts_per_page' => 10, 'offset' => 0, 'orderby' => data, 'order' => ASC, ' post__not_in' => array( get_the_ID() ), 'tax_query' => array( 'relation' => 'AND', array( 'taxonomy' => 'tax1', 'field' => 'id', 'terms' => tablica ( ... ), // tablica terminu 'operator' => 'IN' ), array( 'taxonomy' => 'podatek2', 'field' => 'id', 'terms' => array ( ... ), // tablica terminu 'operator' => 'IN') ) ); Czy ktoś mógłby mi pomóc rozwiązać ten problem? Dziękuję


title: Korzyści z przechowywania przesłanych plików w folderze zasobów?

text: Staram się nadążyć za responsywnym tworzeniem motywów w Wordpress i przyglądałem się Bootstrapowi i łączeniu go z boilerplate w HTML5. Natknąłem się na szkielet szkieletu, który łączy oba z nich: http://www.rootstheme.com/ Jednak konfiguruje folder przesyłania jako /assets/ w katalogu głównym mojej witryny. Czy są z tego jakieś korzyści? Ten motyw wygląda, jakby robił mnóstwo dobrych rzeczy, więc zakładam, że jest z tego korzyść? Dzięki Osu


title: Pokaż wtyczkę tylko na określonej stronie

text: Używam wtyczki Connections na mojej stronie. Teraz stworzyłem stronę specjalnie do tego celu, więc spis katalogów musi być wyświetlany tylko wtedy, gdy strona to „Katalog” i musi być pokazana na środku. Obecnie wtyczka jest wyświetlana na pasku bocznym. Jak mogę rozwiązać ten problem?


title: API do wyzwalania monitu przy opuszczaniu strony

text: Mam zastrzeżoną wtyczkę, która tworzy metabox na stronie edycji posta. Gdy dane zarządzane przez wtyczkę są edytowane, a użytkownik odchodzi, chcielibyśmy, aby użytkownik był proszony tak, jak Wordpress (a może TinyMCE?) Teraz, gdy edytowana jest treść artykułu. Najlepiej byłoby, gdyby użytkownik zmodyfikował metabox i treść posta, zostałby poproszony raz. **Czy istnieje API, które pozwala nam aktywować brudną flagę Wordpress'a (a może TinyMCE?)?** Jestem świadomy tego podobnego pytania i odpowiedzi, która sugeruje proxy dla zdarzenia beforeunload.


title: Usuń nazwę witryny z tagu <title>

text: Moje obecne tagi `<title>` są następujące: > Tytuł postu na blogu | Nazwa witryny Jak usunąć „Nazwa witryny”, aby tagi `<title>` wyglądały tak: > Tytuł postu na blogu Oczywiście z wyjątkiem strony głównej, gdzie tag `<title>` powinien być: > Nazwa strony Proszę wziąć pod uwagę, że jestem kompletnym nowicjuszem w Wordpress. * * * Edycja: Oto mój obecny znacznik `<title>` z `header.php`: <title> <?php if ( define( 'WPSEO_VERSION' ) ) { // WordPress SEO jest włączone wp_title(); } else { // SEO WordPress nie jest włączone wp_title( '|', true, 'right' ); } ?> </title>