नीचे दिए गए कोड में मैं बनाई गई तिथि, लेखक दिखाना चाहता हूं और उन्हें लिंक करना चाहता हूं लेकिन कुछ भी नहीं दिखाता है। मेरा मानना ​​​​है कि मुझे उस पंक्ति के बजाय $node-> करने की ज़रूरत है, सटीक कोड नहीं मिला है। या क्या होगा अगर मुझे अपने ड्रूपल 6 इंस्टॉलेशन में दृश्यों के तहत कुछ भी बदलने की ज़रूरत है। अग्रिम में धन्यवाद!

<?php if($node->type == 'blog'): ?>
  <div class="blog-page">
    <div class="title-post">
        <div class="top-image">
            <?php print $node->field_image[0]['view'] ?>
        </div><!--TOP-IMAGE-->
        <p>Posted on <a href="<?php $row['path'] ?>">?php $row['created'] ?></a>, by 
        <a href="<?php print url('blog/author/'.$row['uid']) ?>"><?php print $row['name'] ?></a></p>
    </div>
    <div class="content-page">
        <?php print $node->content['body']['#value'] ?>
    </div>
</div>
<?php else: ?>
<?php print $content ?>
<?php endif ?>
1
cchiera 24 जून 2011, 21:55

1 उत्तर

सबसे बढ़िया उत्तर

Drupal में एक नोड ऑब्जेक्ट होता है जिसमें टन से संबंधित जानकारी होती है। मूल रूप से यदि आपको कभी भी लेखक, तिथि, शीर्षक इत्यादि जैसी जानकारी का उपयोग करने की आवश्यकता होती है, तो आप नोड ऑब्जेक्ट को प्रिंट करके आसानी से कोड निर्धारित कर सकते हैं।

echo '<pre>';
print_r($node);
echo '</pre>';

मान लें कि यह सादगी के लिए इस तरह कुछ आउटपुट करता है:

stdClass {

  nid = 3
  content = stdClass {
           raw = " ... "
           clean = " ... "
        }

}

अपने टेम्पलेट में जानकारी के उन बिट्स को आउटपुट करने के लिए, आप निम्न तरीके से लिखेंगे।

बिना उपवर्ग वाले क्षेत्र के लिए:

<?php print $node->nid ?>

उपवर्ग वाले क्षेत्र के लिए:

<?php print $node->content['raw'] ?>

क्या इसका कोई मतलब है? इसे नीचे लाने के बाद, आप ड्रूपल टेम्पलेट्स प्रोग्रामिंग करते समय सचमुच कुछ भी समझ सकते हैं।

इसलिए, यदि आप एक यूआरएल बनाना चाहते हैं, तो आप इसे केवल श्रृंखलाबद्ध करेंगे:

<?php
  $nid = $node->nid;
  $uri = "some/path".$nid;
  print $uri;
?>
1
Kristian 24 जून 2011, 22:04
धन्यवाद, नोड मानों को प्रतिध्वनित किया लेकिन अभी भी एक समस्या है कि मुझे जिस डेटा की आवश्यकता है उसे कैसे प्रदर्शित किया जाए। उस प्रतिध्वनि के परिणाम यहां दिए गए हैं: pastie.org/2117237 बनाई गई तारीख संख्याओं की एक लंबी स्ट्रिंग दिखाती है भले ही दृश्य में इसे ठीक से स्वरूपित किया गया हो और अन्य सभी विचारों में दिनांक उचित प्रारूप में दिखाया गया हो। साथ ही लेखक और ऐसे के लिए क्या लिंक होगा।
 – 
cchiera
24 जून 2011, 22:24
1
वे तिथियां जो आप देखते हैं वे टाइमस्टैम्प हैं (यूनिक्स युग के बाद से सेकंड की संख्या में मापा गया समय = 1 जनवरी 1970 00:00:00 GMT)। उनसे "सामान्य" तिथि प्राप्त करने के लिए आपको उन्हें PHP के दिनांक() फ़ंक्शन के माध्यम से पारित करने की आवश्यकता है, उदाहरण के लिए: दिनांक ('वाई-एम-डी एच: आई: एस', $ पंक्ति-> बनाया गया); यहां उपलब्ध प्रारूपों के बारे में अधिक देखें: php.net/date
 – 
Maciej Zgadzaj
24 जून 2011, 22:46
मासीज, धन्यवाद लेकिन काम नहीं करता। आईटी का कहना है कि तारीख 31 दिसंबर, 1969 है। लेकिन मैंने उस लेख में लॉग इन किया और यह दिखाता है कि यह "2011-05-20 00:00:00 -0400" है। कोई विचार?
 – 
cchiera
24 जून 2011, 23:06
ढ़ूँढ निकाला। बस अपनी $row को $node में बदलने की जरूरत है।
 – 
cchiera
24 जून 2011, 23:19