สอบถามวิธีเปลี่ยนรูปภาพตามสีหัวข้อ

ถามตอบ ปัญหาการพัฒนา Extension ไม่ว่าจะเป็น Module plugin Component หรือ แม้แต่ template การปรับแต่งโค้ด Joomla ต่างๆ ทุกเวอร์ชั่น 1.5 2.5 หรือ 3.x

Moderator: mindphp, ผู้ดูแลกระดาน

ภาพประจำตัวสมาชิก
Thanapoom1514
PHP VIP Members
PHP VIP Members
โพสต์: 4329
ลงทะเบียนเมื่อ: 04/07/2022 9:46 am

สอบถามวิธีเปลี่ยนรูปภาพตามสีหัวข้อ

โพสต์ที่ยังไม่ได้อ่าน โดย Thanapoom1514 »

ต้องการให้รูปภาพเปลี่ยนตามคลาสที่ตั้งค่าในโมดูลยังไงหรอครับ
ซึ่งรูปภาพจะมีสีดำ สีแดง และสีน้ำเงิน
Joomla Development-1.png
Joomla Development-1.png (57.1 KiB) Viewed 646 times
โค้ดในไฟล์ modules.php Genarate หัวข้อของโมดูล

โค้ด: เลือกทั้งหมด

function modChrome_sp_xhtml($module, $params, $attribs) {

	$moduleTag     = $params->get('module_tag', 'div');
	$bootstrapSize = (int) $params->get('bootstrap_size', 0);
	$moduleClass   = $bootstrapSize != 0 ? ' col-sm-' . $bootstrapSize : '';
	$headerTag     = htmlspecialchars($params->get('header_tag', 'h3'));
	$headerClass   = htmlspecialchars($params->get('header_class', 'sp-module-title'));
	
	if ($module->content) {
		echo '<' . $moduleTag . ' class=" ' . htmlspecialchars($params->get('moduleclass_sfx')) . $moduleClass . '">';

			if ($module->showtitle)
			{
				echo '<div class="product-topic">';
				echo '<img class="bottomRightImg" src="' . JUri::root(true) . '/images/menu/blue.png" alt="' . $module->title . '">';
				echo '<' . $headerTag . ' class="' . $headerClass . '">' . $module->title . '</' . $headerTag . '>';
				echo '</div>';
			}

			echo '<div class="sp-module-content">';
			echo $module->content;
			echo '</div>';

		echo '</' . $moduleTag . '>';
	}
}
:gfb:
ภาพประจำตัวสมาชิก
tsukasaz
PHP VIP Members
PHP VIP Members
โพสต์: 21910
ลงทะเบียนเมื่อ: 18/04/2012 9:39 am

Re: สอบถามวิธีเปลี่ยนรูปภาพตามสีหัวข้อ

โพสต์ที่ยังไม่ได้อ่าน โดย tsukasaz »

เช็คจากตัวแปร $params ครับ ใน admin มันจะมีช่องให้ใส่ชื่อ class ได้ ให้ตั้ง class กำหนดสีตามที่ต้องการ
The last bug isn't fixed until the last user is dead. (Sidney Markowitz, 1995)
ภาพประจำตัวสมาชิก
Thanapoom1514
PHP VIP Members
PHP VIP Members
โพสต์: 4329
ลงทะเบียนเมื่อ: 04/07/2022 9:46 am

Re: สอบถามวิธีเปลี่ยนรูปภาพตามสีหัวข้อ

โพสต์ที่ยังไม่ได้อ่าน โดย Thanapoom1514 »

ได้แล้วครับ
Joomla Development-1.png
Joomla Development-1.png (63.06 KiB) Viewed 634 times

โค้ด: เลือกทั้งหมด

function modChrome_sp_xhtml($module, $params, $attribs) {

	$moduleTag     = $params->get('module_tag', 'div');
	$bootstrapSize = (int) $params->get('bootstrap_size', 0);
	$moduleClass   = $bootstrapSize != 0 ? ' col-sm-' . $bootstrapSize : '';
	$headerTag     = htmlspecialchars($params->get('header_tag', 'h3'));
	$headerClass   = htmlspecialchars($params->get('header_class', 'sp-module-title'));
	$image		   = !empty($params->get('moduleclass_sfx')) ? getImage($params->get('moduleclass_sfx')) : '';
	
	if ($module->content) {
		echo '<' . $moduleTag . ' class=" ' . htmlspecialchars($params->get('moduleclass_sfx')) . $moduleClass . '">';

			if ($module->showtitle)
			{
				echo '<div class="product-topic">';
				if ($image)
				{
					echo '<img class="bottomRightImg" src="' . JUri::root(true) . '/images/menu/'.$image.'" alt="' . $module->title . '">';
				}
				echo '<' . $headerTag . ' class="' . $headerClass . '">' . $module->title . '</' . $headerTag . '>';
				echo '</div>';
			}

			echo '<div class="sp-module-content">';
			echo $module->content;
			echo '</div>';

		echo '</' . $moduleTag . '>';
	}
}
function getImage($img) 
{
	$data = '';
	if (strpos($img, 'moduletable_recommended_products') !== false)
	{
		$data = 'blue.png';
	}
	elseif (strpos($img, 'moduletable_products')!== false)
	{
		$data = 'black.png';
	}
	elseif (strpos($img, 'moduletable_brand') !== false)
	{
		$data = 'red.png';
	}
	return $data;
}
:gfb:
ตอบกลับโพส

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 49