जवाबों:
Drupal 6 में, आप हुक का उपयोग नहीं कर सकते हैं या थीम के अंदर हुक को बदल नहीं सकते हैं, इसलिए आपको लिंक को संशोधित करने के लिए एक कस्टम मॉड्यूल बनाने की आवश्यकता होगी । एक बार हो जाने के बाद, आप hook_link()
(यदि आप एक नया लिंक बना रहे हैं) या hook_link_alter()
(यदि आप किसी मौजूदा लिंक को संशोधित करना चाहते हैं ) लागू करना चाहते हैं।
एक नई कड़ी जोड़ना:
example_link($type, $object, $teaser = FALSE) {
$links = array();
// Add a custom link to nodes
if ($type == 'node') {
$links['example_mylink'] = array(
'title' => t('Test link'),
'href' => 'foo',
'attributes' => array(
'title' => 'Test link',
),
);
}
return $links;
}
मौजूदा लिंक को संशोधित करना:
example_link_alter(&$links, $node, $comment = NULL) {
// Remove the read more link
unset($links['node']['node_read_more']);
// Change the title of the read more link
$links['node']['node_read_more']['title'] = t('More information');
// Move read more link to first slot
$link_read_more = $links['node']['node_read_more'];
unset($links['node']['node_read_more']);
$links = $links['node'];
$links['node'] = array(
'node_read_more' => $link_read_more,
) + $links;
// Move link to the last slot
$link_read_more = $links['node']['node_read_more'];
unset($links['node']['node_read_more']);
$links['node']['node_read_more'] = $link_read_more;
}
Drupal 7 में, यह थोड़ा अधिक सीधा है, क्योंकि विषय परिवर्तन हुक को लागू कर सकते हैं। आप जिस हूक को देख रहे हैं, वह है hook_node_view_alter()
:
function example_node_view_alter(&$build) {
// Remove the read more link
unset($build['links']['node']['#links']['node-readmore']);
// Add your own custom link
$build['links']['node']['#links']['example-mylink'] = array(
'title' => t('Test link'),
'href' => 'foo',
'html' => TRUE,
'attributes' => array(
'title' => 'Test link',
),
);
// Move read more link to first slot
$link_read_more = $build['links']['node']['#links']['node_read_more'];
unset($build['links']['node']['#links']['node_read_more']);
$links = $build['links']['node']['#links'];
$build['links']['node']['#links'] = array(
'node_read_more' => $link_read_more,
) + $links;
// Move link to the last slot
$link_read_more = $build['links']['node']['#links']['node_read_more'];
unset($build['links']['node']['#links']['node_read_more']);
$build['links']['node']['#links']['node_read_more'] = $link_read_more;
}
आप इसे सीधे अपनी template.php
फ़ाइल में रख सकते हैं ।
'href'
आप जो चाहें, उसका मूल्य बदल दें ।
आप यह मानते हुए लिंक कि node.tpl.php पर प्रदान करने के बारे में बात कर रहे हैं, आप को लागू करने की आवश्यकता होगी hook_link में उदाहरण देखने के लिए node_link । और अगर आप ड्रूपल हुक के लिए नए हैं, तो यह एक कस्टम मॉड्यूल में होने की जरूरत है, तो हम कहते हैं कि आपके कस्टम मॉड्यूल का नाम "फू" है आपको एक फ़ंक्शन लिखने की आवश्यकता होगी, जिसे foo_link
हुक_लिंक के समान तर्क होना चाहिए।