আমি আমার ফিল্ডের লেবেলগুলি থেকে কোলনটি কীভাবে সরিয়ে ফেলব?


10

আমি কেবলমাত্র আমার রেন্ডার করা ফিল্ড লেবেলগুলি থেকে কোলনটি সরাতে সক্ষম হতে চাই, উদাহরণস্বরূপ:

হোটেলের নাম: হোটেল নাম থেকে

আমি ফিল্ড.টিপিএল.পিপি অনুলিপি করে সেখানে কোলন সরিয়েছি, তবে দ্রুপাল তা গ্রহণ করতে অস্বীকার করে এবং অন্য কোথাও কোলনটি টানছে তা বিবেচনা করেই নয়।

টেমপ্লেট.এফপি ফাংশন দিয়ে আমি কীভাবে এটি করতে পারি?


আপনি ক্যাশে সাফ করেছেন?
অজিতস

হ্যাঁ, বেশ কয়েকবার যান না
নীল 928


@ নীল 928 ডুপ্লিকেট পোস্টটি দেখুন, আপনাকে এটি করতে ওভাররাইড theme_form_element()করতে হবে
ক্লাইভ

উপরের নোড / ফিক্সটি যখন কেউ সামগ্রী সম্পাদনা / ইনপুট করে থাকে তখন ফর্মটি থেকে সহজেই কলোনগুলি সরিয়ে দেয়। নোডে রেন্ডার করার পরে আমার লেবেলগুলি সরিয়ে ফেলতে হবে। .. সুতরাং, এটি উপরের সদৃশ হবে না। ফলাফলটি পেতে আমি আসলে সেই সমাধানটি প্রয়োগ করেছিলাম।
নীল 928

উত্তর:


16

উত্তরটি অবশ্যই অবশ্যই field.tpl.php ব্যবহার করতে হবে । আপনি যদি সেই ফাইলটির উত্সটি দেখেন তবে আপত্তিজনক লাইনগুলি দেখতে পাবেন:

<?php if (!$label_hidden): ?>
  <div class="field-label"<?php print $title_attributes; ?>>
    <?php print $label ?>:&nbsp;
  </div>
<?php endif; ?>

(স্পষ্টতার জন্য স্পেসিং এবং ইন্ডেন্টেশন খনি)।

উপরের রেখাগুলি প্রতিস্থাপন করার মতো কোলন সরানো তত সহজ:

<?php if (!$label_hidden): ?>
  <div class="field-label"<?php print $title_attributes; ?>>
    <?php print $label ?>&nbsp;
  </div>
<?php endif; ?>

আমি কেবল এটি ফাঁকা ড্রুপাল ইনস্টলেশনতে পরীক্ষা করেছি এবং এটি পুরোপুরি কাজ করে; ফিল্ড লেবেলের পরে আর কোনও কলোন নেই।

আপনি যদি ইতিমধ্যে একই জিনিসটি করে চলেছেন তবে সঠিক ফলাফল না পাওয়া যায়, তবে আমি দু'একটি বিষয় ভাবতে পারি যা উদ্বেগজনক হতে পারে:

  • আপনি আপনার কাস্টম সংস্করণটি আপনার সাইটের সক্রিয় থিম ফোল্ডারের পরিবর্তে মডিউল ফোল্ডারে মডিউল ফোল্ডারে রেখেছেন (এটি থিম ফোল্ডারে থাকা দরকার)।
  • সিস্টেমের আর একটি মডিউল / উপাদানটি বর্তমানে আপনার চেয়ে আরও শক্তিশালী উপায়ে ফিল্ড.tpl.phpকে ওভাররাইড করছে। এটি কেস কিনা তা দেখার ক্ষেত্রে সমস্যাটি কোথা থেকে আসছে তা নির্ধারণের জন্য প্রতিটি সক্ষম মডিউলটিকে সর্বদা-ক্লান্তিকর অক্ষম করা জড়িত।

টেম্পলেট ফাইলটিতে কোলন হার্ড-কোডড হওয়ায় আপনি কোনও টেম্পলেট প্রিপ্রোসেস ফাংশন দিয়ে পরিবর্তন করতে পারবেন না।


আহ, সত্যিই এখানে আরও একটি মডিউল ছিল যা টেমপ্লেট ফাইলটিকে সঠিকভাবে কাজ করা থেকে আটকাচ্ছিল। কিছু সহায়ক ডিবাগিং দিক নির্দেশ করার জন্য ধন্যবাদ
নীল 928

9

আমি ঠিক একটি মডিউল তৈরি করেছি যা ঠিক এটি করে, আউটপুটে ফিল্ড লেবেল থেকে কলোন (প্রতি ক্ষেত্রের ভিত্তিতে) সরিয়ে দেয়: কোলেক্টমি


নিশ্চিত করতে পারেন. এই মডিউলটি দুর্দান্তভাবে কাজ করে এবং ইস্যুটির একটি সহজ, মার্জিত সমাধান।
চিহ্নিত করুন

2

যদি ক্ষেত্রগুলির সাথে এটি একটি ভিউ হয় তবে কেবল ক্ষেত্রটি ক্লিক করুন এবং "লেবেল তৈরি করুন" এর পরে "লেবেল তৈরি করুন" এর নীচে "একটি কোলন রাখুন" বাছাই করুন।


2

ডিসপ্লে স্যুট একই কার্যকারিতা সরবরাহ করে:

আপনি যদি ডিসপ্লে স্যুট অতিরিক্তগুলি সক্ষম করে থাকেন তবে লেবেলের আগে কলোন সরিয়ে ফেলার বিকল্প রয়েছে:

তার জন্য পথ: /admin/structure/ds/list/extras/

এখানে চিত্র বর্ণনা লিখুন


1
এটি কোলন অপসারণের চেয়ে অনেক বেশি করে। আপনি যদি কাস্টম সিএসএস প্রয়োগ করে থাকেন তবে এটি এটি হত্যা করবে।
চিহ্নিত করুন

0

আমার ক্ষেত্রে এটি আমার ফাইলে সম্পূর্ণ ফাংশনটি অনুলিপি করে এবং পড়ার লাইনটি পরিবর্তন করে theme_field()( field.module) ওভাররাইড করে কাজ করেছিলtemplate.php

$output .= '<div class="field-label"' . $variables['title_attributes'] . '>' . $variables['label'] . '&nbsp;</div>';

চেষ্টা করার আগে ক্যাশে সাফ করুন।


0

আমি দ্রুপাল 8 এর কোথাও এই প্রশ্নের উত্তর খুঁজে পাইনি। ড্রুপাল 8-এর সাথে কোলনকে ক্লাসি কোর থিমটিতে একটি CSS ফাইল (ফিল্ড। সিএসএস) যুক্ত করা হয় যদি আপনি এটি আপনার বেস থিম হিসাবে ব্যবহার করেন using আপনাকে যা করতে হবে তা হ'ল এটি আপনার থিমের নিজস্ব সিএসএস ফাইলে ওভাররাইড করা।

মূল ক্ষেত্রের CSS ফাইল থেকে তাই:

.field--label-inline .field__label::after {
    content: ':';
}

কোলন অপসারণ করতে আমার থিম সিএসএস ফাইলে:

.field--label-inline .field__label::after {
    content: '';
}
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.