Хак - Выборочное изображение из текста поста в качестве основного 1.X

662
Хак - Выборочное изображение из текста поста в качестве основного
С помощью этого хака можно назначать какое-либо изображение из текста поста блога в качестве основного, для вывода в списках записей блогов.



Хак - Выборочное изображение из текста поста в качестве основного

Для установки на стандартный шаблон без правок:

1 - Cкачать архив.
2 - Папки components и templates загрузить в корень вашего сайта, заменить.
3 - Выполнить запрос sql(install.sql) через phpMyAdmin.

Для самостоятельной установки:

1 - Cкачать архив.
2 - Папку components загрузить в корень вашего сайта, заменить.
3 - Открыть файл \templates\_default_\components\com_blog_view_post.tpl
В конец файла вставить код:
Код PHP:
  1.  
  2.  
  3. {if $myblog || $is_admin}
  4. <script type="text/javascript">
  5.  
  6. $(document).ready(function(){
  7.  
  8. var target = 'post';
  9. var target_id = '{$post.id}';
  10.  
  11. $('.cboxElement','#content_blog_post').each(function(i,elem) {
  12. $(this).append('<span class="con_set_main_img_button">Сделать главным</span>')
  13. });
  14.  
  15. $('.con_set_main_img_button').on('click', function(e) {
  16. var container = $(this).closest('.cboxElement');
  17. var image = container.children('img').attr('src');
  18. $.post('/components/addons/set_main_image.php', { 'target': target, 'target_id': target_id, 'image':image }, function(data){
  19. alert(data);
  20. });
  21. return false;
  22. });
  23.  
  24.  
  25. });
  26.  
  27. </script>
  28. <style>
  29. .cboxElement{ position:relative;display:block;overflow:hidden; }
  30. .con_set_main_img_button{
  31. position:absolute;top:-100%;right:0;
  32. background:rgba(0,0,0,0.6);
  33. color:#fff !important;
  34. font-weight:bold;
  35. font-size:12px;
  36. padding:6px 12px;
  37. -webkit-transition: all 0.5s ease 0s; -moz-transition: all 0.5s ease 0s;-o-transition: all 0.5s ease 0s;transition: all 0.5s ease 0s;
  38. cursor:pointer;
  39. }
  40. .cboxElement:hover .con_set_main_img_button{ top:0; }
  41. </style>
  42. {/if}
  43.  
4 - Открыть файл: templates\_default_\modules\mod_blogs.tpl
Найти:
Код PHP:
  1.  
  2. {if !$post.fileurl}
  3.  
Заменить на:
Код PHP:
  1.  
  2. {if !$post.fileurl && !$post.image}
  3.  
Найти:
Код PHP:
  1. {$post.fileurl}
Заменить на:
Код PHP:
  1.  
  2. {if $post.image}{$post.image}{else}{$post.fileurl}{/if}
  3.  
5 - Выполнить запрос sql(install.sql) через phpMyAdmin.
Виджет Группы | Обёртка с заголовком и описанием для изображений в редакторе Redactor
Комментарии (13)
GoodMade.ru 27 декабря 2017 в 01:02 0
А чтобы ограниченное по размеру изображение не потеряло в резкости, используем такие стили для тегов img.
Александр 27 декабря 2017 в 11:35 0
дело полезное, спасибо, буду ставить однозначно!
Александр 28 декабря 2017 в 11:57 0
не арбайтен или не пойму как работает, тестировал и на голом дефолте. ничего не добавляется.
GoodMade.ru 28 декабря 2017 в 14:24 0
Может в вашем случае что-то не работает так, как нужно. Но у меня всё же работает. А вы поленились уточнить что у вас не работает.
Александр 28 декабря 2017 в 21:11 0
Не запускается сам скрипт видимо, т к вообще ничего не работает
Александр 28 декабря 2017 в 21:17 0
Т е после проделанных манипуляций, ничего в блогах не добавилось при добавлении имредактировании
GoodMade.ru 28 декабря 2017 в 22:23 0
А там и не должно ничего появится. Вы правили файл com_blog_view_post.tpl, значит изменения нужно искать на странице записи блога, при наведении на какое-либо изображение, помещённое в тег
GoodMade.ru 28 декабря 2017 в 22:29 0
Писал вам развёрнутый ответ с пояснением как оно работает и о том, что в качестве основной картинки можно взять любую картинку помещённую в тег
GoodMade.ru 28 декабря 2017 в 22:31 0
И вот снова.. отправилось только часть текста..
Александр 28 декабря 2017 в 22:58 0
Спасибо, но пока не понимаю, как взять любую картинку, или какой тег использовать?
Александр 28 декабря 2017 в 23:03 0
увидел на скрине кнопку "сделать главным" , уже что то, у меня такой не появилось, но хотя бы понял где искать.
Александр 28 декабря 2017 в 23:31 0
сдаюсь... не понимаю, должно быть всё элементарно, в коде страницы, как положено перед комментариями идет код
...
Код PHP:
  1. $(this).append('<span class="con_set_main_img_button">Сделать главным</span>')
  2.  
...
ошибок багтрекер не показывает
почему не работает непонятно

а демо нет или где зарегиться посмотреть?
GoodMade.ru 29 декабря 2017 в 17:20 0
Смотреть у вас нужно, так как у меня сие работает. Может не работать из за кеширования.