Intereting Posts
Пользовательский размер эскиза изображения при загрузке Прослушать действие публикации Исключить все липкие сообщения на первой странице двадцать двенадцать Преобразование виджетам темы в плагины? Пользовательский размер для изображения, загруженного в пользовательское поле в профиле пользователя? Удалить вкладку «С компьютера» для сообщений с существующими вложениями? Где я могу создать свою собственную функцию в wp-admin медленный WP_Query для пользователя, не являющегося администратором Отключите трекбэк / pingback и комментарии на всех существующих многосайтовых сайтах Как? Перенаправление / категория / sci-fi / to / category / scifi /? Есть ли фильтр для скрипта enqueue, чтобы удалить свойство type = "text / javascript" Создать страницу-призрак Статическая страница в один пункт меню неактивные элементы выделены Пользовательская Loop Loop Есть ли менеджер событий WordPress, который связывается с вашей пользовательской базой данных?

Интеграция Pinterest с помощью functions.php

Я использую тему для создания портфеля.

Я хотел бы добавить pinterest «pin-it button» в fuctions.php: Facebook, Google+, Twitter был сделан, просто pinterest не будет работать.

Не удалось найти неправильный код. Это мой код:

function share_this($content){ if ( is_singular( 'portfolio' ) ) { $content .= '<div class="share-this">' . /* Facebook */ '<div class="facebook-like-button">' . '<iframe src="http://www.facebook.com/plugins/like.php?href='. urlencode( get_permalink( $post->ID ) ) . '&amp;layout=button_count&amp;show_faces=false&amp;width=200&amp;action=like&amp;colorscheme=light&amp;height=21"' . 'scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:200px; height:21px;" allowTransparency="true"></iframe>' . '</div>' . /* Pinterest */ '<div class="pinterest-it-button">' '<a href="http://pinterest.com/pin/create/button/?url=<?php echo get_permalink(); ?>&media=<?php echo get_thumbnail(); ?> '&description=<?php the_title(); ?>" class="pin-it-button" count-layout="horizontal">Pin It</a> '<script type="text/javascript" src="http://assets.pinterest.com/js/pinit.js"></script>'. '</div>' . /* Googgle+ */ '<div class="plusone"><g:plusone size="medium" href="'.get_permalink().'"></g:plusone></div>' . /* Twitter */ '<div><a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal">Tweet</a></div>' . '</div>'; } 

благодаря

Solutions Collecting From Web of "Интеграция Pinterest с помощью functions.php"

В вашем коде было несколько ошибок. Самым большим было то, что у функции даже не было закрывающей скобки, но мы, вероятно, предположим, что ее просто не скопировали в ваш пост, иначе ничего не было бы для вас работать.

Это фильтр по праву содержимого?

Похоже, вы хотите добавить эти акции после своего контента. Если это так, как вам нужна эта строка:

 add_filter('the_content','share_this'); 

Помимо этого, вы пытались закрыть теги php и открывать их в своем заявлении, в котором вы добавляете строковые данные в переменную $content . Вы также пытались эхо-данные и используемые функции эхо вместо возврата (например, the_title вместо get_the_title который возвращает значение).

Вместо одной большой строки, добавленной к вашему контенту, я очищал вещи, используя метод построения массива, но несколько $shares .= Тоже работали бы.

Это должно работать, хотя я его не тестировал.

 <?php function share_this($content) { if ( is_singular( 'portfolio' ) ) { global $post; $link = esc_attr(get_permalink($post->ID)); $title = esc_attr(get_the_title($post->ID)); $image_id = get_post_thumbnail_id($post-ID); $image_url = wp_get_attachment_image_src($image_id); $thumb = $image_url[0]; $shares = array(); $shares[] = '<div class="share-this">'; /* Facebook */ $shares[] = '<div class="facebook-like-button"><iframe src="http://www.facebook.com/plugins/like.php?href='.$link.'&amp;layout=button_count&amp;show_faces=false&amp;width=200&amp;action=like&amp;colorscheme=light&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:200px; height:21px;" allowTransparency="true"></iframe></div>'; /* Pinterest */ $shares[] = '<div class="pinterest-it-button"><a href="http://pinterest.com/pin/create/button/?url='.$link.'&amp;media='.$thumb.'description='.$title.' class="pin-it-button" count-layout="horizontal">Pin It</a><script type="text/javascript" src="http://assets.pinterest.com/js/pinit.js"></script></div>'; /* Googgle+ */ $shares[] = '<div class="plusone"><g:plusone size="medium" href="'.$link.'"></g:plusone></div>'; /* Twitter */ $shares[] = '<div><a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal">Tweet</a></div>'; $shares[] = '</div>'; return $content . implode("\n", $shares); } } 

Вы get_thumbnail() URL-адрес неправильно, так как сначала он должен быть urlencoded, а второй – get_thumbnail() , распечатывает ли он полный тег img? и 3-е вы эхом отдаете.

в любом случае попробуйте это

 /* Pinterest */ $baseurl = 'http://pinterest.com/pin/create/button/?'; $url = 'url='.urlencode(get_permalink()); $mediaUrl = '&media='.urlencode(wp_get_attachment_image_src ( get_post_thumbnail_id())); $description = '&description='.urlencode(get_the_title()); $fullURL = $baseurl.$url.$mediaUrl.$description; $content .= '<div class="pinterest-it-button"> <a href="'.$fullURL.'" class="pin-it-button" count-layout="horizontal">Pin It</a> <script type="text/javascript" src="http://assets.pinterest.com/js/pinit.js"></script> </div>'; 

Ваша проблема – простой синтаксис php. Вы не можете использовать открывающие и закрывающие php-скобки <?php и ?> назначении переменной, а отдельные строки и переменные должны быть объединены точкой .

В качестве примеров следуйте кнопкам G + и Facebook. Я также предполагаю, что вы хотите return свои результаты?