• Главная
  • Поиск
    •  
  • Здравствуйте, Гость

Автор Тема: Точное время публикации объявления  (Прочитано 560 раз)
  • *
  • Сообщений: 27
Сейчас имеем:  Май 26, 2016
Необходимо: Май, 26, 2016 19:11
Как вывести часы и минуты как в админке?

Оффлайн Dis
  • Admin
  • *****
  • Сообщений: 1095
    • Шаблоны и плагины Osclass
« Ответ #1 : 27 Май 2016, 10:44:56 »
Сейчас имеем:  Май 26, 2016
Необходимо: Май, 26, 2016 19:11
Как вывести часы и минуты как в админке?
В functions.php Вашего шаблона добавьте функцию:
function cust_format_date_with_time($date, $dateformat = null) {
    if($dateformat==null) {
        $dateformat = osc_date_format();
    }

    $month = array('', __('January'), __('February'), __('March'), __('April'), __('May'), __('June'), __('July'), __('August'), __('September'), __('October'), __('November'), __('December'));
    $month_short = array('', __('Jan'), __('Feb'), __('Mar'), __('Apr'), __('May'), __('Jun'), __('Jul'), __('Aug'), __('Sep'), __('Oct'), __('Nov'), __('Dec'));
    $day = array('', __('Monday'), __('Tuesday'), __('Wednesday'), __('Thursday'), __('Friday'), __('Saturday'), __('Sunday'));
    $day_short = array('', __('Mon'), __('Tue'), __('Wed'), __('Thu'), __('Fri'), __('Sat'), __('Sun'));
    $ampm = array('AM' => __('AM'), 'PM' => __('PM'), 'am' => __('am'), 'pm' => __('pm'));


    $time = strtotime($date);
    $dateformat = preg_replace('|(?<!\\\)F|', osc_escape_string($month[date('n', $time)]), $dateformat);
    $dateformat = preg_replace('|(?<!\\\)M|', osc_escape_string($month_short[date('n', $time)]), $dateformat);
    $dateformat = preg_replace('|(?<!\\\)l|', osc_escape_string($day[date('N', $time)]), $dateformat);
    $dateformat = preg_replace('|(?<!\\\)D|', osc_escape_string($day_short[date('N', $time)]), $dateformat);
    $dateformat = preg_replace('|(?<!\\\)A|', osc_escape_string($ampm[date('A', $time)]), $dateformat);
    $dateformat = preg_replace('|(?<!\\\)a|', osc_escape_string($ampm[date('a', $time)]), $dateformat);

    return date($dateformat . " " . osc_time_format(), $time);
}

В item.php шаблона замените
osc_format_dateна
cust_format_date_with_time

  • *
  • Сообщений: 27
« Ответ #2 : 27 Май 2016, 11:02:36 »
function cust_format_date_with_time и т.д я так понимаю добавляем в любом месте
в файле functions.php
не забывая "<?php" "?>"
В item.php получается следующая картина
<?php if ( osc_item_pub_date() !== '' ) { printf( __('<i class="fa fa-calendar-o"></i> Published date: %1$s', OSCLASSWIZARDS_THEME_FOLDER), cust_format_date_with_time( osc_item_pub_date() ) ); } ?>
        </li>
        <li>
          <?php if ( osc_item_mod_date() !== '' ) { printf( __('<span class="update"><i class="fa fa-calendar"></i> Modified date:</span> %1$s', OSCLASSWIZARDS_THEME_FOLDER), cust_format_date_with_time( osc_item_mod_date() ) ); } ?>
возможно выделенные элементы так же подлежат замене? так как если оставить всё как есть, в выше перечисленном коде, item.php не загружается, при клике на объявление.

Оффлайн Dis
  • Admin
  • *****
  • Сообщений: 1095
    • Шаблоны и плагины Osclass
« Ответ #3 : 27 Май 2016, 11:11:19 »
не забывая "<?php" "?>"
Зачем добавлять ещё теги php ? Файл посмотрите в начале тег и в конце.
Надо точно сделать, что написано и всё.

  • *
  • Сообщений: 27
« Ответ #4 : 27 Май 2016, 11:18:00 »
Работает! Спасибо!

  • *
  • Сообщений: 29
    • boxdoska
« Ответ #5 : 02 Июнь 2016, 12:09:24 »
у меня пишет  Дата публикации: 01/01/1970 03:00

Оффлайн Dis
  • Admin
  • *****
  • Сообщений: 1095
    • Шаблоны и плагины Osclass
« Ответ #6 : 03 Июнь 2016, 10:57:55 »
у меня пишет  Дата публикации: 01/01/1970 03:00
Значит не правильно код меняли, ищите и исправляйте ошибки.
Всё что написано - работает на 100%, лично проверено.

 


test