Varsayılan olarak başlangıç ve bitiş tarihini görüntülemek için görünümleri kullanırken, iki tarih arasında "metne" ekler, "-" - veya başka bir şeye "dönüştürmek için uygun yolun ne olduğunu merak ediyordum.
Teşekkürler
Varsayılan olarak başlangıç ve bitiş tarihini görüntülemek için görünümleri kullanırken, iki tarih arasında "metne" ekler, "-" - veya başka bir şeye "dönüştürmek için uygun yolun ne olduğunu merak ediyordum.
Teşekkürler
Yanıtlar:
Benim cevaplarımda "field_event_date" adında, benim görüşüme göre İçerik: Etkinlik Tarihi olarak gösterilen bir alanım olduğu varsayılıyor.
Cevap # 1 - Görünüm Şablonunu Kullan
Görünümün Gelişmiş Bölümü'nün altında, Diğer bölümünün altında Tema Bilgileri'ni açın
Alan İçeriği için son tema seçeneğinin dosya adını kopyalayın: Olay Tarihi, benim durumumda görünümler-görünüm-alanı olacak - VIEWMACHINENAME - BLOCKMACHINENAME - field-event-date.tpl.php
Aşağıdakileri kopyalayın:
<?php
/**
* @file
* This template is used to print a single field in a view.
*
* It is not actually used in default Views, as this is registered as a theme
* function which has better performance. For single overrides, the template is
* perfectly okay.
*
* Variables available:
* - $view: The view object
* - $field: The field handler object that can process the input
* - $row: The raw SQL result that can be used
* - $output: The processed output that will normally be used.
*
* When fetching output from the $row, this construct should be used:
* $data = $row->{$field->field_alias}
*
* The above will guarantee that you'll always get the correct data,
* regardless of any changes in the aliasing that might happen if
* the view is modified.
*/
?>
<?php print date("Y-m-d H:i:s", strtotime($row->field_field_event_date[0]["raw"]["value"])); ?>
-
<?php print date("Y-m-d H:i:s", strtotime($row->field_field_event_date[0]["raw"]["value2"])); ?>
Bu, date () biçim dizesini kullanarak 2014-08-09 20:15:00 - 2014-08-12 20:15:00 biçimini çıktılar .
Cevap # 2 - Görünüm Alanlarını Kullanın
Bu, seçtiğiniz biçime bağlı olarak 1 Aralık 2013 - 12:00 - 1 Aralık 2013 - 12:00 Pazar günleri gibi bir şey çıktılar.
[field_my_time] - [field_my_time_1]
.
Yukarıdaki cevap doğru olmasına rağmen, php'yi böyle bir TPL'de kullanmamak en iyi uygulamadır. Drupal bir grup süslü API ile birlikte gelir, bunlardan biri template_preprocess_views_view_fields'dir ( Burada görüldüğü gibi )
Template.php dosyasında şunları yapın:
function YOURTHEME_preprocess_views_view_fields(&$vars) {
if($vars['view']->name == 'YOUR_VIEW') {
if (strpos($vars['fields']['YOUR_FIELD']->content,'to') !== false) {
$vars['fields']['YOUR_FIELD']->content = str_replace('to','-',$vars['fields']['YOUR_FIELD']->content);
}
}
}
Tarih 7.x-2.8 ve sonraki sürümlerde, "başlangıç tarihi-bitiş tarihi" dizesinin tamamı çevrilebilir. Bu, "-" işaretini "-" olarak değiştirmenin kolay bir yolunun Dize Geçersiz Kılma modülünü kullanmak olduğu anlamına gelir . Modülü indirin ve etkinleştirin, ardından / admin / config / bölgesel / stringoverrides adresini ziyaret edin. Bu sayfada, "Orijinal" altına "! Başlangıç tarihi"! Tırnaksız) ve "Değiştirme" altına "! Başlangıç tarihi -! Bitiş tarihi" (tırnak işaretleri olmadan) ekleyin. Kaydet'i tıklayın. Değişikliği görmeden önce sitenizin önbelleklerini de temizlemeniz gerekebilir.
Bu yöntemin bir yararı, düğümlerde ve görünümlerde aynı anda "-" değerini "-" olarak değiştirmesidir .