10 полезных коротких кодов для WordPress

25 Мар 2023г. в 10:25

Короткие коды помогают сохранить время всем пользователям WordPress. Они позволяют выполнять сложные задачи простой вставкой кода с параметрами в текст записи. В данном уроке мы представляем 10 коротких кодов WordPress, которые увеличат вашу производительность.



1. Выводим снимок любого веб сайта
Нужно делать снимки веб сайтов и выводить их в своем блоге? Данный короткий код поможет решить эту задачу. Просто скопируйте следующий код в файл functions.php вашей темы:

function wpr_snap($atts, $content = null) {
extract(shortcode_atts(array(
"snap" => 'http://s.wordpress.com/mshots/v1/',
"url" => 'http://www.test.ru',
"alt" => 'Изображение',
"w" => '400', // ширина
"h" => '300' // высота
), $atts));
$img = '<img src="' . $snap . '' . urlencode($url) . '?w=' . $w . '&h=' . $h . '" alt="' . $alt . '"/>';
return $img;
}
add_shortcode("snap", "wpr_snap");
После чего можно использовать короткий код, как показано в примере. Он выведет снимок сайта test.ru в блоге!

1
[snap url="http://www.test.ru" alt="Проект test.ru" w="400" h="300"]


2. Добавляем ссылку поддержки проекта через PayPal
PayPal открывает работу прием платежей на счета пользователей из России. Теперь можно добавить кнопку поддержки проекта с помощью платежей через PayPal на свой блог. Следующий код выведет такую кнопку на вашем сайте. Просто скопируйте код в файл functions.php вашей темы:

function cwc_donate_shortcode( $atts ) {
extract(shortcode_atts(array(
'text' => 'Поддержите проект',
'account' => 'ИНФОРМАЦИЯ_О_СЧЕТЕ',
'for' => '',
), $atts));

global $post;

if (!$for) $for = str_replace(" ","+",$post->post_title);

return '<a class="donateLink" href="https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&business='.$account.'&item_name=Donation+for+'.$for.'">'.$text.'</a>';

}

add_shortcode('donate', 'cwc_donate_shortcode');

3. Маскируем адрес email
Спам боты постоянно сканируют интернет в поисках почтовых адресов для рассылки спама. Конечно, никто не хочет получать спам, но что если нужно показывать свой адрес почты в блоге? Данный короткий код маскирует почтовый адрес. Скопируйте код в файл functions.php вашей темы.

function cwc_mail_shortcode( $atts , $content=null ) {
for ($i = 0; $i < strlen($content); $i++) $encodedmail .= "&#" . ord($content[$i]) . ';';
return '<a href="mailto:'.$encodedmail.'">'.$encodedmail.'</a>';
}
add_shortcode('mailto', 'cwc_mail_shortcode');

А использовать его в тексте записи или страницы очень просто:

[mailto]email@yourdomain.com[/mailto]

4. Создаем содержание только для зарегистрированных пользователей
Если нужно создать содержание, которое смогут просматривать только зарегистрированные пользователи, то следующий короткий код поможет решить задачу. Скопируйте код в файл functions.php вашей темы:

function cwc_member_check_shortcode( $atts, $content = null ) {
if ( is_user_logged_in() && !is_null( $content ) && !is_feed() )
return $content;
return '';
}

add_shortcode( 'member', 'cwc_member_check_shortcode' );
Теперь можно использовать короткий код в тексте записи или страницы для защиты содержания:

[member]Данный текст будет выводиться только для зарегистрированных пользователей.[/member]


5. Выводим PDF файл во фрейме
Самый простой способ вывода PDF файла на вашем сайте: загрузить PDF файл через Google Docs, а затем вывести его во фрейме на вашей странице. Скопируйте ниже приведенный код в файл functions.php вашей темы:

function cwc_viewpdf($attr, $url) {
return '<iframe src="http://docs.google.com/viewer?url=' . $url . '&embedded=true" style="width:' .$attr['width']. '; height:' .$attr['height']. ';" frameborder="0">Ваш браузер должен поддерживать iFrame для просмотра документа PDF</iframe>';
}
add_shortcode('embedpdf', 'cwc_viewpdf');

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

[embedpdf width="600px" height="500px"]http://infolab.stanford.edu/pub/papers/google.pdf[/embedpdf]


6. Содержание "Только для фида RSS"
Данный короткий код предназначен для вывода содержания только в фид RSS. Нужен для передачи важного сообщения читателям вашего фида или для размещения рекламы только в RSS. копируем ниже приведенный код в файл functions.php вашей темы:

function cwc_feedonly_shortcode( $atts, $content = null) {
if (!is_feed()) return "";
return $content;
}
add_shortcode('feedonly', 'cwc_feedonly_shortcode');

И используем код в записях и страницах:

[feedonly]Уважаемы читатели RSS, пожалуйста, посетите <a href="http://yourwebsite.com">мой сайт</a> и нажмите на рекламном блоке[/feedonly]

7. Кнопка для размещения записи в Twitter через сервис TweetMeme
Twitter является отличным источником трафика для блога. Поэтому данный короткий код является очень полезным инструментом. Скопируйте ниже приведенный код в файл functions.php вашей темы:

function tweetmeme(){
return '<div class="tweetmeme"><script type="text/javascript" src="http://tweetmeme.com/i/scripts/button.js"></script></div>';
}
add_shortcode('tweet', 'tweetmeme');

Теперь можно использовать кнопку сервиса Tweetmeme “retweet” на страницах и записях вашего сайта:

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

function cwc_postimage($atts, $content = null) {
extract(shortcode_atts(array(
"size" => 'thumbnail',
"float" => 'none'
), $atts));
$images =& get_children( 'post_type=attachment&post_mime_type=image&post_parent=' . get_the_id() );
foreach( $images as $imageID => $imagePost )
$fullimage = wp_get_attachment_image($imageID, $size, false);
$imagedata = wp_get_attachment_image_src($imageID, $size, false);
$width = ($imagedata[1]+2);
$height = ($imagedata[2]+2);
return '<div class="postimage" style="width: '.$width.'px; height: '.$height.'px; float: '.$float.';">'.$fullimage.'</div>';
}
add_shortcode("postimage", "cwc_postimage");

Теперь можно вывести последнее изображение с помощью короткого кода:

9. Размещаем видео Youtube
Если вы часто размещаете видео с канала Youtube в вашем блоге, то данный код поможет сохранить много времени. Создаем код в файле functions.php вашей темы:

function cwc_youtube($atts) {
extract(shortcode_atts(array(
"value" => 'http://',
"width" => '475',
"height" => '350',
"name"=> 'movie',
"allowFullScreen" => 'true',
"allowScriptAccess"=>'always',
), $atts));
return '<object style="height: '.$height.'px; width: '.$width.'px"><param name="'.$name.'" value="'.$value.'"><param name="allowFullScreen" value="'.$allowFullScreen.'"></param><param name="allowScriptAccess" value="'.$allowScriptAccess.'"></param><embed src="'.$value.'" type="application/x-shockwave-flash" allowfullscreen="'.$allowFullScreen.'" allowScriptAccess="'.$allowScriptAccess.'" width="'.$width.'" height="'.$height.'"></embed></object>';
}
add_shortcode("youtube", "cwc_youtube");

И в тексте записи или страницы используем короткий код:

[youtube value="http://www.youtube.com/watch?v=1aBSPn2P9bg"]

10. Вставляем RSS фид
Данный короткий код позволяет вставлять любой RSS фид в ваши записи или страницы. Отличный способ сослаться на другой блог с вашего сайта! Копируем ниже приведенный код в файл functions.php вашей темы:

include_once(ABSPATH.WPINC.'/rss.php');

function cwc_readRss($atts) {
extract(shortcode_atts(array(
"feed" => 'http://',
"num" => '1',
), $atts));

return wp_rss($feed, $num);
}

add_shortcode('rss', 'cwc_readRss');

А в тексте записи используем короткий код:

[rss feed="http://feeds.feedburner.com/catswhocode" num="5"]