Технический сбой

Сайт временно работает в режиме только для чтения, идут восстановительные работы. Приносим свои извинения за неудобства.
DLE FAQ » Все вопросы » Общие вопросы по вёрстке » Как реализовать отдельный short story на определенное время?

Как реализовать отдельный short story на определенное время?


     Общие вопросы по вёрстке, Шаблоны (TPL), Стили (CSS)    3389

вопрос
Всем привет!

Ребят, подскажите, как можно реализовать такую вещь:

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

Может есть подобный хак или модуль, или ещё какие методы реализации?!
Буду очень благодарен, если кто подскажет.


Заранее спасибо.

Ответил: D0Gmatist


Подурачился чуть больше чем вам требуется ))
http://jsfiddle.net/D0Gmatist/gcjyc0u3/

32 комментария

vitnet
PHP-developer

vitnet - -

Новость фиксированная?

Moreno
Юзер

Moreno - -


vitnet, нет, обычная, как все. Вот пример.

aios
Гости

aios - -



UPD* Не прокатит.... ибо подгрузка тпл идет раньше цикла где можно выдрать ID

ПафНутиЙ
Админ

ПафНутиЙ - -

Попробуйте вот этот хак

Каков вопрос - таков и ответ. Просто помните об этом.

aios
Гости

aios - -

ПафНутиЙ,
Если только если второй стиль просто оставить скрытым в shortstory.tpl и открывать его по значению поля - но тогда можно обойтись и xfgiven.

Moreno
Юзер

Moreno - -

Спасибо за данный хак, пригодится в копилочку) Но как открывать стиль, я там увидел и понял....а вот как его закрыть и в 0:00 автоматически вернуть прежний-стандартный shortstory не понятно((

ПафНутиЙ
Админ

ПафНутиЙ - -

Ну тогда остаётся только js

Каков вопрос - таков и ответ. Просто помните об этом.

Moreno
Юзер

Moreno - -

ПафНутиЙ, а Вы не смогли бы это реализовать на js? :) Не бесплатно конечно)

ПафНутиЙ
Админ

ПафНутиЙ - -

Я не принимаю заказы.

Каков вопрос - таков и ответ. Просто помните об этом.

Moreno
Юзер

Moreno - -

ПафНутиЙ, у меня тут некоторая идея возникла :) А можно ли это реализовать через фиксацию новостей? Предположим я ставлю галочку фиксировать и ставлю дату и время, когда снять фиксацию...но вопрос в том, как сделать так, чтобы фиксированные новости не фиксировались над всеми новостями, а были в общем списке? Теоретически же такое возможно?

LazyDev
PHP-developer

LazyDev - -

Moreno, проще простого. Простой скрит на jq который пишется за 5 минут

Мой блог: LazyDev.pro

Помогаю с решением проблем на платной основе.

Moreno
Юзер

Moreno - -

Gameer, жду в скайпе)

LazyDev
PHP-developer

LazyDev - -

Как то так, нет ?
[xfgiven_class]

<script>
$(function(){
var $date = new Date();
var $set_date = $date.getFullYear() +'.'+ eval($date.getMonth()+1) +'.'+ $date.getDate();
if($set_date != '{date=Y.m.d}') {
$( "#menu" ).removeClass( "my_class" )
}
});
</script>

[/xfgiven_class]

Мой блог: LazyDev.pro

Помогаю с решением проблем на платной основе.

aios
Гости

aios - -

Gameer,
Чет ты намудрил, причем тут меню если человеку нужен новый стиль новости.

Сам постараюсь поваять

LazyDev
PHP-developer

LazyDev - -

aios, лол што ? Ты хоть понял работу скрипта ? Я привел пример, по истечению этого дня класс который прописывается в [xfvalue_class] будет убираться. Просто данные под себя подставить.

У меня такое ощущение, что ты вообще во всем этом не разбираешься.

Мой блог: LazyDev.pro

Помогаю с решением проблем на платной основе.

aios
Гости

aios - -

Ну во первых - кто тебя научил писать переменные со знаком $ - это чистой воды иудаизм. Разработчик прям из 90-х.

Боже что это?

$set_date = $date.getFullYear() +'.'+ eval($date.getMonth()+1) +'.'+ $date.getDate();


Неужели так было бы не изящнее?

var $date = new Date();
var $set_date = new Date('{date=Y.m.d}');


А теперь расскажи мне что это за логика такая - которая прибавляет 1 месяц. К дате которую только что получил?
И смысл этой твоей переменной - если ты дату получаешь одинаковую в обоих случаях и в JS и в DLE - Где здесь определяется что день закончился? Или {date=Y.m.d} у тебя как то по другому работает?

D0Gmatist
Юзер

D0Gmatist - -

Цитата: aios
А теперь расскажи мне что это за логика такая - которая прибавляет 1 месяц. К дате которую только что получил?
Ни хрена что в JS месяца исчисление идёт с нуля
и если PHP даст сегодняшнюю дату 2015-4-16
то JS 2015-3-16

LazyDev
PHP-developer

LazyDev - -

D0Gmatist, да что ему объяснять то ? Видишь человек ничего не знает, и что-то хочет доказать этим. Нет смысла ему даже код расписывать ибо он не может понять что к чему.

Мой блог: LazyDev.pro

Помогаю с решением проблем на платной основе.

aios
Гости

aios - -

Все хорошо угомонитесь - реально пару моментов упустил. Спасибо что разъяснили.

LazyDev
PHP-developer

LazyDev - -

aios, ты действительно ничерта не знаешь. Супер мега-кодеру объясняю суть работы моего скрипта.
Здесь берем текущую дату :
var $date = new Date();

Здесь мы берем из поточной даты год, месяц и день.
var $set_date = $date.getFullYear() +'.'+ eval($date.getMonth()+1) +'.'+ $date.getDate();

Здесь проверка на сегодняшнюю дату и дату самой новости. (ОНИ ОТЛИЧАЮТСЯ)
if($set_date != '{date=Y.m.d}') {
$( "#menu" ).removeClass( "my_class" )
}


Теперь уяснил, кодерщик ? И да, не учи меня как мне писать переменные, для начала сам бы подучился чем других учить.

Мой блог: LazyDev.pro

Помогаю с решением проблем на платной основе.

aios
Гости

aios - -

Мде.. этот момент я упустил. Я работал долго с Фреймворками и для меня запись {date=Y.m.d} автоматически означала текущее время. В DLE же оно оказывается отражает дату новости.

так что извиняюсь в дискуссии был не прав.

D0Gmatist
Юзер

D0Gmatist - -

Веялку не сломай

aios
Гости

aios - -

Бог сарказма.

D0Gmatist
Юзер

D0Gmatist - -

Бог правды

scaver
Юзер

scaver - -

http://prowebber.ru/dle/hacks/15508-smena-kategorii-po-nastupleniyu-daty.html
создайте категорию, укажите short-story
по наступлении даты меняйте категорию

Moreno
Юзер

Moreno - -

scaver, ахинею не пиши

scaver
Юзер

scaver - -

В чем ахинея?
я предложил создать категорию с названием эксклюзив, указав свой tpl для short-story.
А с помощью хака (правда не знаю работает или нет), пускай при наступлении даты меняется категория на нужную

Moreno
Юзер

Moreno - -

scaver, а в том, что если у меня новости уже в категории НОВОСТИ и они больше никакой категории не принадлежат? Куда я их тогда буду перемещать?

scaver
Юзер

scaver - -

ну давайте так, без удара палкой все равно работать не будет, так как дле ест стандартный шаблон short-story в главной категории (не доглядел), а задумка была в том, что изначально новость постилась бы в категорию "Эксклюзив", а после наступлении даты перемещалась в ту категорию которую вы укажете.

Moreno
Юзер

Moreno - -

ну сейчас же всё прекрасно работает, благодаря D0Gmatist...без всяких ударов палкой....так что....

scaver
Юзер

scaver - -

:-) очень хорошо

Moreno
Юзер

Moreno - -

D0Gmatist, спасибо огромное, всё получилось)) респект тебе Dog)))

Похожие вопросы

наверх