Drupal 7 Programatik Olarak Oluşturulan Sayfanın Cache'ini Kapatma

Drupal 7 kullanarak modül yardımıyla oluşturmuş olduğunuz sayfanın Drupal tarafından önbelleklenmesini kapatmak istiyorsanız aşağıdaki komutu o sayfanın çağrıldığı fonksiyonda kullanabilirsiniz.

drupal_page_is_cacheable(FALSE);

Drupal 7 'de XML Sitemap için Priority, Changefreq, Lastmod değerlerini değiştirme

XML Sitemap modülünde ana sayfa, menü, içerik türü, sınıflandırma terimi  ve kullanıcı bazında ayarlamalar yapılabiliyor. Ancak sadece priority değerini değiştirmemize izin veriyor. Changefreq ve Lastmod değerlerini de aşağıdaki hook yardımıyla değiştirebiliriz.

Drupal 7'de field group içindeki bir field'a varsayılan değer atama

Drupal 7'de field group içinde yer alan bir field'a (alan) varsayılan değer atamak normal field'dan biraz farklıdır. hook_from_alter içinde doğrudan $form['field_adi'] ile ulaştığınız noktadan değil, field grup içinde yer alan field'a atama yapmanız gerekiyor. Form içinde fgm_ ile başlayan bir değer olacaktır, fgm_node_NODETYPE_form_group_GROUPNAME' yapısına göre isimlendirilen değer altından field'a varsayılan değer ataması yapabilirsiniz. 

Drupal'da bir kullanıcıya programatik olarak rol atamak

Drupal 7'de herhangi bir kullanıcıyı programatik olarak bir role atayabilirsiniz. Bunun için aşağıdaki kodu atama yapmak için kullanabilirsiniz. Örneğin bir kullanıcıya login olduğunda bir rol atamak için hook_user_login hook'unu kullanabilirsiniz. Kullanıcı login olduğunda programatik olarak ilgili role atanmış olur.

Drupal'da public:// ile gerçek dosya yolu

Drupal'da public:// ile başlayan bir views veya node çıktısı için resmin gerçek yolunu image_style_url ile öğrenebilirsiniz. Örnek verecek olursak;

[field_urun_resim] => Array(
    [tr] => Array(
              [0] => Array(
                     [uri] => public://thumbnail/urun.jpg
                     )
             )
     )

gibi bir sonuçta, uri değeri için gerçek resmin yolunu ekrana yazdırmak için aşağıdaki komutu kullanabilirsiniz.

Drupal'da sayfanın tam yolunu (URL) bulmak

Drupal'da herhangi bir sayfanın tam yolunu bulmak için aşağıdaki kodu kullanabilirsiniz.

$path = isset($_GET['q']) ? $_GET['q'] : '';
$link = url($path, array('absolute' => TRUE));

Drupal 7 Menü Hook - Url'a Verip Bir Fonksiyon Çalışmak

function test_menu() {
    $items['url/url2'] = array(
        'title' => 'TEST MENU HOOK',
        'page callback' => 'test',
        'access callback' => TRUE,
        'file' => 'test.page.inc',
    );
    return $items;
}

test.page.inc dosyasında

    function test_page() {
        return 'Merhaba Test!';
    }

Drupal 7'de textfield Alanlarını textare'ya Dönüştürmek

Kısa Metin Alanlarını Uzun Metin Alanına Dönüştürme

Drupal 7'de zaman zaman oluşturduğumuz metin alanlarını (Text field) uzun metin kutusuna dönüştürmeniz gerekebilir. Maalesef ilgili alanlar içinde veriler olduğu için bu düzenlemeyi Drupal arayüzünden yapamıyorsunuz. Field tanımları field_config tablosunda BLOB olarak yer alıyor ve bu metinleri doğrudan da değiştiremiyorsunuz.

Drupal 8 Modül Oluşturma - Block Oluşturma

modules/block_ismi_klasor/src/Plugin/Block/testBlock.php klasör oluşalım. (büyük harfleri dikkat edelim, aksi durumda çalışmayacaktır ve PHP dosya adı her zaman Block ile bitmelidir.)

testBlock.php dosyasına aşağıdaki kodları ekleyelim. Dosya adı ve dosya içinde tanımlanan PHP sınıfı (class) aynı isme sahip olmalıdır.

Drupal 'da Form Submit Butonuna CSS Class Eklemek

Bir buton için yazmış olduğumuz css 'i sitedeki tüm butonlarda kullanmak isteyebiliriz. Ancak form arayüz ekranında, butona class eklemek için bir alan mevcut değil. Bunun için form_alter modülü yardımıyla form submit butonuna class değeri verebiliriz. $form['actions']['submit']['#attributes'] değerinin, array bir değişken alacağını da unutmayalım.