বিভাগের শর্তাবলী কমা দ্বারা পৃথক তালিকা প্রদর্শন করবেন?


10

দ্রুপাল 7।

আমার নোড.টিপিএলপিএফপি-তে, আমি ট্যাক্সনোমির শর্তগুলির একটি তালিকা মুদ্রণ করতে চাই (বিভাগটিকে "চ্যানেলস" বলা হয়)। যদি আমি ব্যবহার করি:

<?php print render($content['field_channel']); ?>

এটি কার্যকরভাবে কাজ করে, তবে তাদের ইনলাইন আনতে আমি সবচেয়ে ভাল যা করতে পারি তা হ'ল সিএসএস ব্যবহার করে তাদের বামে ভাসতে। আমি তাদের কমা দ্বারা পৃথক করা চাই। কোন ধারনা?

ধন্যবাদ.

উত্তর:


11

আপনি ক্ষেত্রটি ব্যবহার করে field.tpl.phpবা তাদের ব্যবহার করে দেখতে পারেন theme_field()

উদাহরণ হিসাবে (ব্যবহার করে field.tpl.php):

  1. field.tpl.php"মডিউল / ক্ষেত্র / থিম" থেকে আপনার থিম ডিরেক্টরিতে অনুলিপি করুন
  2. এই ফাইলটির একটি অনুলিপি তৈরি করুন এবং এর নাম পরিবর্তন করুন field--field-channel.tpl.php
  3. আপনার পছন্দ মতো ফাইলটি সম্পাদনা করুন।

এটি কাজ করার জন্য একটি চটজলদি / নোংরা উদাহরণ হিসাবে field--field-channel.tpl.phpদেখতে পারা যায়:

<div class="<?php print $classes; ?> clearfix"<?php print $attributes; ?>>
  <?php if (!$label_hidden) : ?>
    <div class="field-label"<?php print $title_attributes; ?>><?php print $label ?>:&nbsp;</div>
  <?php endif; ?>
  <div class="field-items"<?php print $content_attributes; ?>>
    <?php foreach ($items as $delta => $item) : ?>
      <div style="display:inline;" class="field-item <?php print $delta % 2 ? 'odd' : 'even'; ?>"<?php print $item_attributes[$delta]; ?>>
        <?php 
          print render($item);
          // Add comma if not last item
          if ($delta < (count($items) - 1)) {
            print ','; 
          }
        ?>
      </div>
    <?php endforeach; ?>
  </div>
</div>

.Tpl ফাইলটি ব্যবহার করে এটি সম্পাদন করার একাধিক উপায় রয়েছে তবে এটি কেবল একটি বিকল্প। আমি স্টাইলের পরিবর্তে ডিআইভিতে একটি ক্লাস যুক্ত করার পরামর্শ দিচ্ছি এবং ইনলাইন স্টাইলগুলি ব্যবহার না করে আপনার স্টাইলশীটে পরিবর্তন আনতে চাই।


দুর্দান্ত, এটি নিখুঁতভাবে কাজ করেছে। আমি জানতাম না যে আপনি যেমন ক্ষেত্রগুলিতে টেম্পলেট ব্যবহার করতে পারেন। এই স্টাফ দিয়ে এখনও অনেক কিছু শিখতে হবে। আবার ধন্যবাদ.
মাইক

টিপিএল ফাইলগুলি ব্যবহার করা কিছুটা বেশি সংস্থানযুক্ত এবং পছন্দসই মোডটি নীচে হুক_ফিল্ড পরামর্শটি ব্যবহার করা।
শনিওবাইক

11

পাঠ্য ফরম্যাটার মডিউল এখন Drupal এর 7 এর জন্য পাওয়া যায়, এবং আপনি কাস্টম থিম কাজ ছাড়া এই কাজ করতে করতে দেয়।


উপরে বর্ণিত উত্তরের বিপরীতে পাঠ্য বিন্যাস মডিউলটি এখন এটির জন্য আদর্শ সমাধান যা থিমের স্তরে প্রায় মিকিং প্রয়োজন requires
জেমস উইলসন

7

theme_fieldপদ্ধতির ব্যবহারের একটি উপায় এখানে (এটি আপনার template.phpফাইলে যুক্ত করুন):

/**
 * Implements theme_field()
 *
 * Make field items a comma separated unordered list
 */
function THEMENAME_field__NAME_OF_FIELD__NAME_OF_CONTENT_TYPE($variables) {
  $output = '';

  // Render the label, if it's not hidden.
  if (!$variables['label_hidden']) {
    $output .= '<div class="field-label"' . $variables['title_attributes'] . '>' . $variables['label'] . ':&nbsp;</div>';
  }

  // Render the items as a comma separated inline list
  $output .= '<ul class="field-items"' . $variables['content_attributes'] . '>';
  for ($i=0; $i < count($variables['items']); $i++) {
    $output .= '<li>'. drupal_render($variables['items'][$i]);
    $output .= ($i == count($variables['items'])-1) ? '</li>' : ', </li>';
  }
  $output .= '</ul>';

  return $output;
}

1
সুপার অসাধারণ ধন্যবাদ এটি আসলে অনেক সাহায্য করেছে! এছাড়াও পছন্দসই পদ্ধতিতে একটি টিপিএল ফাইল!
শনিওবাইক

4

আপনি কেবল সিএসএসে এটি সহজেই করতে পারেন:

.ফিল্ড-টাইপ-শ্রেণীবদ্ধ-শব্দ-রেফারেন্স। ফিল্ড-আইটেমস। ফিল্ড-আইটেম {
  প্রদর্শন: ইনলাইন-ব্লক;
  * প্রদর্শন: ইনলাইন;
  * জুম: 1;
}
.ফিল্ড-টাইপ-ট্যাক্সনমি-টার্ম-রেফারেন্স .ফিল্ড-আইটেমস। ফিল্ড-আইটেম: পরে after
  সামগ্রী: ",";
}
.ফিল্ড-টাইপ-ট্যাক্সনমি-টার্ম-রেফারেন্স .ফিল্ড-আইটেমস। ফিল্ড-আইটেম: শেষ সন্তান: পরে
  সামগ্রী: "";
}

1
ধন্যবাদ, যদিও আমাকে এই জায়গার জন্য পালানো ইউনিকোড ব্যবহার করতে হয়েছিল content: ", \00a0": stackoverflow.com/a/5467676/724176
হুগো


0
<?php
if ($node->taxonomy) {
    foreach($node->taxonomy as $term) {
        if ($term->vid == 3) { // the id of the vocabulary
            $my_terms[] = l(
                t($term->name),
                'taxonomy/term/' . $term->tid
            );
        }
    }
}

if ($my_terms) { ?>
    <div class="clear-block">
        <div class="terms">
            <?php print implode(", ", $my_terms); ?>
        </div>
    </div>
<?php } ?>

3
এটি থিম সিস্টেমের পাশ কাটা, টিপিএল ফাইলে হার্ড কোডড ডিসপ্লে লজিক স্থাপন এবং রক্ষণাবেক্ষণের মাথাব্যথা তৈরি করছে।
জেরেমি ফরাসী

পাশের মডিউলগুলি প্রায় একই রকম ব্যবহার করা কি ভাল? আপনি দয়া করে আরও রক্ষণাবেক্ষণ-বান্ধব কোড সরবরাহ করতে পারেন?
রুটিকাল ভি।

0

ডিলিমিটার এবং মোড়কের জন্য এমনকি সহজ, আপনি ট্যাক্সোনমি ফর্ম্যাটর মডিউলটি ব্যবহার করেন: http://drupal.org/project/taxonomy_formatter

প্রকল্প পৃষ্ঠা থেকে আরও বিশদ:

এটি একটি ছোট মডিউল যা ট্যাক্সনমি আইটেমগুলির জন্য কাস্টম ফর্ম্যাটর সরবরাহ করতে লেখা। ডিফল্ট ফর্ম্যাটর উভয় শর্তকে ডিভগুলিতে আবৃত করে। এই মডিউলটি একটি নতুন ফর্ম্যাটার যুক্ত করেছে যা আপনাকে উপাদান টাইপ, মোড়কের ধরণ, উভয়ের জন্য ক্লাস, ব্যবহৃত বিভাজক এবং যদি তারা শব্দ পৃষ্ঠাগুলির সাথে লিঙ্ক করে তবে তা নির্দিষ্ট করতে দেয়। এটি অনেক বেশি স্বনির্ধারিত বিন্যাসের বিকল্প দেয় gives

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.