WordPress шорткод: вставляй изображение в пост по имени файла автоматически

Для выполнения повторяющихся действий, таких как например вставка одного и того же изображения в разные посты, лучше всего подойдут шорткоды. Из этого поста ты узнаешь, как замутить такой шорткод.

Первое, что надо сделать это добавить в файл functions.php следующий код:

function image_shortcode($atts, $content = null) {
    extract( shortcode_atts( array(
    'name' => '',
    'align' => 'right',
    'ext' => 'png',
    'path' => '/wp-content/uploads/',
    'url' => ''
    ), $atts ) );
    $file=ABSPATH."$path$name.$ext";
    if (file_exists($file)) {
        $size=getimagesize($file);
        if ($size!==false) $size=$size[3];
        $output = "<img src='".get_option('siteurl')."$path$name.$ext' alt='$name' $size align='$align' class='align$align' />";
        if ($url) $output = "<a href='$url' title='$name'>".$output.'</a>';
        return $output;
    }
    else {
        trigger_error("'$path$name.$ext' image not found", E_USER_WARNING);
        return '';
    }
}
add_shortcode('image','image_shortcode');

После этого можно использовать шорткод image в постах, вставляя в них такую строку:

[image name=cat]

Это вставит изображение из файла cat.png(со стандартными аттрибутами), находящегося в папке /wp-content/uploads/

А добавив в строчку параметр align можно указать расположение изображения, например такая строчка разместит изображение по центру

[image name=cat align=center]

Если же в папке /wp-content/uploads/ находятся два файла cat.png и cat.jpg, то для вставки cat.jpg достаточно добавить в шорткод параметр ext

[image name=cat ext=jpg]

Переведено с блога WordPress recipies. Там ещё дофигища подобных рецептов, рекомендую.

ru-hentai.com – хентай

Об авторе Skech

Погонщик умов.
Запись опубликована в рубрике Wordpress с метками , . Добавьте в закладки постоянную ссылку.

41 комментарий: WordPress шорткод: вставляй изображение в пост по имени файла автоматически

  1. Tatev говорит:

    Большое спасибо это то, что мне нужно!

  2. Olga говорит:

    Потрясающе!!! Я нашла столько нового и интересного и полезного для себя!!! Но я пока не знаю, как этим воспользоваться, я ещё очень неопытный блоггер, некоторая информация слишком круто для меня. В любом случае, спасибо, буду заходить, разбираться.
    А можно задавать вопросы? Может, дадите когда-либо консультацию?

  3. mutabor говорит:

    Честно признаюсь – в этом не шарю, но показал программерам – сказали «берем на воружение», так что большое спасибо

  4. partners говорит:

    To Olga: Извечная проблема, насобираешь себе вроде бы и полезных решений и мучайся потом что с ними делать :)

  5. karmel говорит:

    Так не нужно собирать – что собираешься применить – сразу нужно применять, а что нет, то просто пропускать мимо ушей

  6. Venya говорит:

    Супер! Теперь времени сэкономлю хоть!

  7. Andrey говорит:

    Надо попробовать. Может это проще сделать, чем на картинке так монстровато выглядит, а главное – это быстро!

  8. Marinya говорит:

    думаю, этих причин пока будет достаточно

  9. Vitaliy говорит:

    Очень нужный метод, спасибо, а то в php уже трудно стало

  10. Всё работает. Время значительно экономица. Автору +5

  11. Дмитрий говорит:

    Нравится то, что вы разбираете структуру движка вордпресса

  12. johnny говорит:

    Очень полезная фишка. спасибо!))

  13. biz говорит:

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

  14. Denis говорит:

    Так давно задавался этим вопросом.
    Спасибо большое, теперь оформлять посты станет удобнее!

  15. Нло говорит:

    Спасибо за код.

  16. Лена говорит:

    спасибо, сейчас буду разбираться

  17. Combox говорит:

    шорткод просто открытием стал для меня, спасибо!

  18. Павел говорит:

    Вчера попробовал код, код рабочий, все пашет

  19. allximik говорит:

    Хорошая опция, но мне кажется проше пользоваться произвольными полями, да и код там значительно поменьше…

  20. Lino4ka говорит:

    сегодня потестить попробую, давно искала подобный вариант!

  21. Олег говорит:

    Совершенно случайно наткнулся на эту статью и очень обрадовался. Иду попробую, хотя я уверен что код рабочий.

  22. Айван говорит:

    Блин, а прикольно получается, однако.

  23. miF говорит:

    Спасибо за статью. Использовал в своем блоге!

  24. Рид говорит:

    Полезная фича для тех, кто картинки часто использует.

  25. miF говорит:

    Удобно, спасибо за код.
    Хотя, рационализм – это главное в нашем не легком деле (-;

  26. AKA говорит:

    Отличные уроки. По ним легко можно выучить основные фичи в ВП

  27. Prostoi говорит:

    А такое возможно только с картинками? или можно ещё видео, текст?

  28. Огородник говорит:

    Спасибо за информацию. Отличные уроки.

  29. Bender говорит:

    Потдержу вопрос выше: работает это только с картинками или же на видео тоже?

  30. rezident говорит:

    Спасибо за статью, а то у меня всегда вставка картинок занимала больше всего времени!

  31. maya говорит:

    Спасибо! скопировал себе в блокнотичек, буду юзать но потом…

  32. Herty говорит:

    Это вообще круто. Я уже 1.5 года работал с WP и мучился. Автору мегареспект

  33. владимир говорит:

    спасибо за информацию)))
    во многом упростит загрузку изображений!!!

  34. test говорит:

    Владимир, точно! Автору спасибо за старания:))

  35. ITmujik говорит:

    Я использую Textpattern, там с этим проблем нет, все вставляется легким движением руки)) Правда рука должна быть опытная

  36. Приписка говорит:

    Интересная штучка, значительно облегчила бы постинг.

  37. rezident говорит:

    Удобная вещь, просто у меня на вставку и корректировку изображений, бывает уходит время больше, чем на написание статьи!

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

  39. Pozdravleniya говорит:

    очень интересно, и полезно, когда на моем блоге появилось новое направление, я решил сделать Dofollow блог то, я добавил картинку с Dofollow к себе на блог во все свои посты, и эта статья мне очень помогла! Спасибо

  40. Liana говорит:

    Очень удобная фича. Огромная благодарность от меня лично автору статьи :) .

  41. Puma говорит:

    Полезно. Правда жаль, что на PHP, я с ним не дружу =( Попробую на сайте поискать скрипты. Спасибо.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">