Home Drupal แก้ css ใน drupal
formats

แก้ css ใน drupal

Published on 19/11/2010 by in Drupal

พอดีว่าเว็บนี้ใช้ theme ที่สร้างจากโปรแกรม artisteer 2 แล้วปรากฏว่า ต้องเข้าไปแก้ ./module/system/system.css บางจุด

ซึ่งทีนี้ถ้าเกิดว่า เกิดมีการ update core ขึ้นมาทีนึงคงแก้กันจุกในกันเลยทีเดียว

จากที่พี่ชาย @jackz แนะนำมาว่า ให้ทำการ hook เอา css ของ system มาใส่ใน theme ซะจะได้แก้ง่าย ๆ ก็เลยทำดูแล้วสรุปวิธีทำได้ว่า…

ใน ./site/all/themes/(theme-name)/drupal6_methods.php

หาบรรทัดที่เขียนว่า

function phptemplate_preprocess_page(&$vars) {

….

}

แก้ให้เป็น

function phptemplate_preprocess_page(&$vars) {
$vars['tabs'] = ”;
$primary = menu_primary_local_tasks();
if (!empty($primary)) {
$vars['tabs'] = ‘<ul class=”arttabs_primary”>’.$primary.’</ul>’;
}

$vars['tabs2'] = ”;
$secondary = menu_secondary_local_tasks();
if (!empty($secondary)) {
$vars['tabs2'] = ‘<ul class=”arttabs_secondary”>’.$secondary.’</ul>’;
}

// Hook into color.module
if (module_exists(‘color’)) {
_color_page_alter($vars);
}

// Hook Core CSS
// Unset stylesheets.
$css = $vars['css'];
// unset($css['all']['module']['modules/node/node.css']);
unset($css['all']['module']['modules/system/system-menus.css']);
unset($css['all']['module']['modules/system/system.css']);
unset($css['all']['module']['modules/system/defaults.css']);
$vars['styles'] = drupal_get_css($css);

}

โดยจุดที่เพิ่มมาคือ

// Hook Core CSS
// Unset stylesheets.
$css = $vars['css'];
// unset($css['all']['module']['modules/node/node.css']);
unset($css['all']['module']['modules/system/system-menus.css']);
unset($css['all']['module']['modules/system/system.css']);
unset($css['all']['module']['modules/system/defaults.css']);
$vars['styles'] = drupal_get_css($css);

เสร็จแล้วก็ไปที่ ./site/all/themes/(themes-name)/(themes-name).info

ค้นหาคำว่า

stylesheets[all][] = style.css

แล้วยัด

stylesheets[all][] = replace-defaults.css
stylesheets[all][] = replace-system.css
stylesheets[all][] = replace-system-menus.css

ไว้บนบรรทัดนั้นจะได้เป็น

stylesheets[all][] = replace-defaults.css
stylesheets[all][] = replace-system.css
stylesheets[all][] = replace-system-menus.css
stylesheets[all][] = style.css

เสร็จแล้วก็เข้าไปที่ ./modules/system/ ทำการ copy ไฟล์ดังต่อไปนี้

./modules/system/defaults.css

./modules/system/system.css

./modules/system/system-menus.css

ไปไว้ที่ ./site/all/themes/(theme-name)/

แล้วทำการเปลี่ยนชื่อโดยเพิ่มคำว่า replace- ไว้ที่หน้าชื่อไฟล์ ก็จะได้ไฟล์

./site/all/thmes/(theme-name)/replace-defaults.css
./site/all/thmes/(theme-name)/replace-system.css
./site/all/thmes/(theme-name)/replace-system-menus.css

เซฟซะแล้วก็บรรเลงได้เลย

Related posts:

  1. ติดตั้ง FCKeditor in Drupal 6.12
 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
1 Comment  comments