2016-08-05 2 views
0

Я получаю неправильную дату публикации блога на frontend в magento.Неправильный блог Дата публикации в Magento

Это мой код из файла phtml сообщения.

$formatType = Mage::getStoreConfig(NeoTheme_Blog_Helper_Data::XPATH_CONFIG_DATETIME_FORMAT_TYPE); 
$format = ($formatType != 'custom')? 
    Mage::app()->getLocale()->getDateTimeFormat($formatType): 
    Mage::getStoreConfig(NeoTheme_Blog_Helper_Data::XPATH_CONFIG_DATETIME_CUSTOM_FORMAT); 

и ниже HTML это отображение даты, как -

<span class="post-time"> 
       <?php //echo $this->__('Posted On: '); ?> 
       <?php $date = ($this->getPost()->getPostDate() != NULL)? $this->getPost()->getPostDate() : $this->getPost()->getCreatedAt(); ?> 
       <?php echo Mage::app()->getLocale()->date($date)->toString($format); ?> 
       <?php // $timestamp = (int) Mage::app()->getLocale()->date($date)->getTimestamp() ;?> 
       <?php // echo date('d D', $timestamp)?><?php // echo date('M', $timestamp)?> 
      </span> 

Это моя структура базы данных

+--------------------+----------------------+------+-----+---------------------+-----------------------------+ 
| Field    | Type     | Null | Key | Default    | Extra      | 
+--------------------+----------------------+------+-----+---------------------+-----------------------------+ 
| entity_id   | int(10) unsigned  | NO | PRI | NULL    | auto_increment    | 
| created_at   | timestamp   | NO |  | CURRENT_TIMESTAMP | on update CURRENT_TIMESTAMP | 
| updated_at   | timestamp   | NO |  | 0000-00-00 00:00:00 |        | 
| status    | smallint(5) unsigned | NO |  | 1     |        | 
| title    | text     | NO |  | NULL    |        | 
| author    | text     | NO |  | NULL    |        | 
| post_date   | timestamp   | NO |  | 0000-00-00 00:00:00 |        | 
| summary   | text     | NO |  | NULL    |        | 
| content_html  | text     | NO |  | NULL    |        | 
| meta_description | text     | YES |  | NULL    |        | 
| meta_title   | text     | YES |  | NULL    |        | 
| meta_keywords  | text     | YES |  | NULL    |        | 
| store_ids   | text     | NO |  | NULL    |        | 
| category_ids  | text     | NO |  | NULL    |        | 
| tag_ids   | text     | NO |  | NULL    |        | 
| cms_identifier  | varchar(255)   | YES | UNI | NULL    |        | 
| customer_group_ids | text     | YES |  | NULL    |        | 
| publish_date  | timestamp   | YES |  | NULL    |        | 
| use_summary  | smallint(6)   | YES |  | 1     |        | 
| root_template  | varchar(255)   | YES |  | NULL    |        | 
| layout_update_xml | text     | YES |  | NULL    |        | 
+--------------------+----------------------+------+-----+---------------------+-----------------------------+ 

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

+0

сделал вы проверяете вам местные настройки для времени для опции локали в 'системы> Конфигурация> общий локальный option' правильно –

+0

Да, это правильно, как в моем понимании EST временной зоны (Америка Нью-Йорк) –

+0

в базе экономии «Часовой пояс EST (Америка Нью-Йорк)»? –

ответ

0

есть две вещи, вы должны

сначала удалить на обновление CURRENT_TIMESTAMP это так что дата не будет обновляться

использовать это, чтобы установить значение для created_At Varien_Date::now(), если вы хотите сделать Magento путь.

<?php $date=Mage::app()->getLocale()->date($date); 
     echo date('L d, M Y',strtotime($date)) ?> 
+0

Как преобразовать эту дату' getLocale() -> date ($ date); ?> '' 22 декабря 2015 г. 12:48:42 'нравится" Четверг 14, июль 2016 ' –

+0

обновил ответ –

+0

ничего не показывает. на самом деле страница ничего не показывает, когда я добавляю вам код. Я написал этот код ' formatDate ($ date, Mage_Core_Model_Locale :: FORMAT_TYPE_FULL, false); ?> 'Но это показывает вывод, как это« вторник, 22 декабря 2015 года », как изменить его на« вторник 22 декабря 2015 года » –

Смежные вопросы