CMS DataLife Engine - Система управления сайтами

Sign in to follow this  
makatun

Как разбить внутри краткой новости (shortstory.tpl) вывод новостей попарно тегами?

Recommended Posts

Подскажите, как разбить попарно новости, которые выводятся в shortstory.tpl?
Попытаюсь объяснить что именно я хочу сделать.
Мне нужно, чтобы при выводе новостей, каждые 4 новости обрамлялись тегом <div>.

Сейчас у меня выводятся так:
<div class="row">
<a href="Новость 1">
<a href="Новость 2">
<a href="Новость 3">
<a href="Новость 4">
<a href="Новость 5">
<a href="Новость 6">
<a href="Новость 7">
<a href="Новость 8">
<div>


А нужно сделать так:

<div class="row">
<a href="Новость 1">
<a href="Новость 2">
<a href="Новость 3">
<a href="Новость 4">
<div>

<div class="row">
<a href="Новость 5">
<a href="Новость 6">
<a href="Новость 7">
<a href="Новость 8">
<div>

и т.д.

Edited by makatun

Share this post


Link to post
Share on other sites
Цитата

Внимание !!!

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

 

1. Если ваша тема начинается с вопроса и вам нужна какая либо помощь, то в самой теме в обязательном порядке вы должны указывать ссылку на ваш сайт. Если ваш сайт находится в локальной сети и вы не можете предоставить ссылку, или вы не хотите публиковать открытой ссылки на ваш сайт, то отправляйте персональное сообщение с вопросом в службу поддержки непосредственно с сайта http://dle-news.ru/, вам ответят на ваш вопрос в персональном порядке, в случае если пользуетесь платной версией скрипта и обладаете лицензией на скрипт. Если вы пользуетесь демоверсией, то вам необходимо разместить сайт в сети интернет, и только потом обращаться за помощью. По находящимся на локальных компьютерах демоверсиям никакой помощи и поддержки на форуме не оказывается. Если вы не указали сайт, то ваша тема будет закрыта, а аккаунт на форуме заблокирован.

 

2. На данном форуме строго запрещено предлагать или навязывать свои платные услуги. За любое сообщение типа "Помогу дешево, ICQ ..." участник блокируется на форуме без предупреждения.

 

Share this post


Link to post
Share on other sites

Демо у меня на локалке.

Вы мне предлагаете так сделать?

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

Share this post


Link to post
Share on other sites
33 минуты назад, makatun сказал:

Демо у меня на локалке.

Вы мне предлагаете так сделать?

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

Цитата

Если вы пользуетесь демоверсией, то вам необходимо разместить сайт в сети интернет, и только потом обращаться за помощью. По находящимся на локальных компьютерах демоверсиям никакой помощи и поддержки на форуме не оказывается. Если вы не указали сайт, то ваша тема будет закрыта, а аккаунт на форуме заблокирован.

вот пункт в правиле по поводу демо на локалке, либо пиши в техподдержку

Share this post


Link to post
Share on other sites

Ну так по существу кто-нибудь ответит, реально ли сделать такое на этом движке?

Share this post


Link to post
Share on other sites
34 минуты назад, makatun сказал:

Ну так по существу кто-нибудь ответит, реально ли сделать такое на этом движке?

правила выполни и ответят

Share this post


Link to post
Share on other sites
3 часа назад, makatun сказал:

Ну так по существу кто-нибудь ответит, реально ли сделать такое на этом движке?

Сделать можно всё что угодно и на чём угодно и cms тут не при чём. То что вы хотите сделать можно сделать на любой cms

Share this post


Link to post
Share on other sites

Это делается в шаблоне shortstory.tpl или нужно править движок?

Share this post


Link to post
Share on other sites
10 минут назад, makatun сказал:

Это делается в шаблоне shortstory.tpl или нужно править движок?

править файлы cms не нужно

Share this post


Link to post
Share on other sites

Подскажите как это сделать?

На php я бы сделал, например так:

 

$news = array('Новость 1','Новость 2','Новость 3','Новость 4','Новость 5','Новость 6','Новость 7','Новость 8','Новость 9','Новость 10');
$chunk = array_chunk($news,4,true);

foreach($chunk as $key=>$val) {
echo '<div class="row">';
	
foreach($val as $key=>$news) {
echo '<a href="Новость '.($key+1).'">'.$news.'</a>';
} 
echo '</div>';
}

Как сделать такое на dle я не знаю.

Share this post


Link to post
Share on other sites

Попробовал в шаблоне сделать так, но если новостей на странице не хватает, то закрывающего тега </div> не будет.

[newscount=1,5,9,13,17,21,25,29,34,38,42,46,50]<div class="row">[/newscount]
<a title="{title} " href="{full-link}">{title}</a>
[newscount=4,8,12,16,20,24,28,32,36,40,44,48,52]</div>[/newscount]

 

 

Share this post


Link to post
Share on other sites

Чуть выше germanydletest написал, что править движок не нужно. Как реализовать это без правки движка?

Share this post


Link to post
Share on other sites
1 минуту назад, makatun сказал:

Чуть выше germanydletest написал, что править движок не нужно. Как реализовать это без правки движка?

можно через custom может поможет

а так  он прав, это в новых версиях через систему плагинов правится

Share this post


Link to post
Share on other sites

Я dle скачал на днях, до этого не пользовался, пытаюсь разобраться что к чему.

Подскажите, а custom разве будет работать в шаблоне shortstory.tpl или только в main.tpl?

А плагин, как я понял нужно самому писать под это дело или есть уже готовые?

Посмотрел файл show.short.php, он у меня закодирован.

Share this post


Link to post
Share on other sites
16 минут назад, makatun сказал:

Подскажите, а custom разве будет работать в шаблоне shortstory.tpl или только в main.tpl?

вот вся документация https://dle-news.ru/extras/online/index.html?all2.html

17 минут назад, makatun сказал:

А плагин, как я понял нужно самому писать под это дело или есть уже готовые?

все плагины обычно пишут под себя, есть и готовые наработки в инете должны быть

Share this post


Link to post
Share on other sites
В 22.11.2019 в 00:56, makatun сказал:

Мне нужно, чтобы при выводе новостей, каждые 4 новости обрамлялись тегом <div>.



 

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

Share this post


Link to post
Share on other sites

Можно сделать так, через js

 

var col_count = $('#dle-content > .col-lg-3'),
cntGroup = 4;
var divsArr = col_count.get();
for(var i = 0; i < col_count.length; i += cntGroup){
  $(divsArr.slice(i,i+cntGroup)).wrapAll('<div class="row">');

}

Ну логику вы поняли надеюсь!

Share this post


Link to post
Share on other sites
В 21.11.2019 в 17:56, makatun сказал:

Подскажите, как разбить попарно новости, которые выводятся в shortstory.tpl?
Попытаюсь объяснить что именно я хочу сделать.
Мне нужно, чтобы при выводе новостей, каждые 4 новости обрамлялись тегом <div>.


Сейчас у меня выводятся так:

<div class="row">
<a href="Новость 1">
<a href="Новость 2">
<a href="Новость 3">
<a href="Новость 4">
<a href="Новость 5">
<a href="Новость 6">
<a href="Новость 7">
<a href="Новость 8">
<div>


А нужно сделать так:


<div class="row">
<a href="Новость 1">
<a href="Новость 2">
<a href="Новость 3">
<a href="Новость 4">
<div>

<div class="row">
<a href="Новость 5">
<a href="Новость 6">
<a href="Новость 7">
<a href="Новость 8">
<div>

и т.д.

А так сделать в чем проблема?

https://jsfiddle.net/xza35qL8/2/

Share this post


Link to post
Share on other sites

Спасибо. Да понял уже, просто я думал, что это можно сделать средствами движка в самом шаблоне.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this