Cách giảm giá cho 1 sản phẩm trong virtue mart.
1. Tạo mới category là DiscountCategory
2. Vào Taxes & Calculation Rules
chọn Price modifier for Profit Margin
3. Sản phẩm nào cần giảm giá chỉ cần chọn cateogry là DiscountCategory
Thứ Tư, 4 tháng 12, 2013
Thứ Ba, 3 tháng 12, 2013
Joomla 3.x - contact form capchar
Cách xử dụng form contact capchar của google của joomla 3.x có sẵn
1. Đăng ký key capchar từ google: http://www.google.com/recaptcha
2. Bật plugin capchar và điền key
3. Kiểm tra thư viện capchar:
Thời điểm đầu tháng 12 năm 2013 viết bài này thì link thư viện capchar bị lỗi, vì vậy cần kiểm tra và thay thế đoạn code.
Vị trí file: plugins\captcha\recaptcha\recaptcha.php - line 64
//JHtml::_('script', $server . '/js/recaptcha_ajax.js');
JHtml::_('script', 'http://google.com/recaptcha/api/js/recaptcha_ajax.js');
4. Bật capchar từ global config
5. Kết quả hiển thị
1. Đăng ký key capchar từ google: http://www.google.com/recaptcha
2. Bật plugin capchar và điền key
3. Kiểm tra thư viện capchar:
Thời điểm đầu tháng 12 năm 2013 viết bài này thì link thư viện capchar bị lỗi, vì vậy cần kiểm tra và thay thế đoạn code.
Vị trí file: plugins\captcha\recaptcha\recaptcha.php - line 64
JHtml::_('script', 'http://google.com/recaptcha/api/js/recaptcha_ajax.js');
4. Bật capchar từ global config
5. Kết quả hiển thị
Thứ Bảy, 30 tháng 11, 2013
Joomla 1.5- K2 replace Recapchar comment .js library
K2 Comment joomla 1.5 sử dụng http://api.recaptcha.net/js/recaptcha_ajax.js thư viện này ko còn hỗ trợ nữa. Nên khi sử dụng recapchar ko hiển thị.
Cách thực hiện: replace thư viện vào: components\com_k2\views\item\view.html.php
Thay đoạnhttp://api.recaptcha.net/js/recaptcha_ajax.js bằng
http://google.com/recaptcha/api/js/recaptcha_ajax.js
Lưu ý: cần vào http://www.google.com/recaptcha để lấy public key và private key vào Admin: component->k2 chọn option -> comments điền key vào và bật lên.
Cách thực hiện: replace thư viện vào: components\com_k2\views\item\view.html.php
Thay đoạn
http://google.com/recaptcha/api/js/recaptcha_ajax.js
Lưu ý: cần vào http://www.google.com/recaptcha để lấy public key và private key vào Admin: component->k2 chọn option -> comments điền key vào và bật lên.
Joomla 1.5 - k2 comment notify email to admin
K2 component joomla 1.5 không hỗ trợ việc gửi mail báo cho admin khi có comment mới.
Vì vậy cần viết thêm đoạn code này.
File location cần hiệu chỉnh: components\com_k2\models\item.php
Sử dụng thư viện Utilities của joomla: thêm vào đoạn: jimport('joomla.utilities.utility');
Tìm chức năng: function comment()
Thêm đoạn : có thể thêm ở dòng 753 (trong function comment)
//sendmail $linkitemcomment=JURI::base().$item->link=urldecode(JRoute::_(K2HelperRoute::getItemRoute($item->id.':'.$item->alias,
$item->catid.':'.urlencode($item->category->alias))));
$emailadmin=$mainframe->getCfg('mailfrom');
$bodymail='Nội dung bình luận:'.$commentText.'<br/><a href="'.$linkitemcomment.'">'.$linkitemcomment.'</a>';
JUtility::sendMail($commentEmail, $userName, $emailadmin, 'Có bình luận mới',$bodymail,1);
Vì vậy cần viết thêm đoạn code này.
File location cần hiệu chỉnh: components\com_k2\models\item.php
Sử dụng thư viện Utilities của joomla: thêm vào đoạn: jimport('joomla.utilities.utility');
Tìm chức năng: function comment()
Thêm đoạn : có thể thêm ở dòng 753 (trong function comment)
//sendmail $linkitemcomment=JURI::base().$item->link=urldecode(JRoute::_(K2HelperRoute::getItemRoute($item->id.':'.$item->alias,
$item->catid.':'.urlencode($item->category->alias))));
$emailadmin=$mainframe->getCfg('mailfrom');
$bodymail='Nội dung bình luận:'.$commentText.'<br/><a href="'.$linkitemcomment.'">'.$linkitemcomment.'</a>';
JUtility::sendMail($commentEmail, $userName, $emailadmin, 'Có bình luận mới',$bodymail,1);
Thứ Năm, 28 tháng 11, 2013
Joomla 15 Media manage not view Browser file selection
Đối với joomla 1.5 - Media manage ko xuất hiện input có browser để chọn file up lên có thể thử cách sau:
Thứ Ba, 26 tháng 11, 2013
SAFARI iframe session issue
Trình duyệt SAFARI không cho load session của IFRAME.
Nguyên nhân: trình duyệt safari chống các tự động popup.
Ảnh hưởng: đây là suy nghĩ tốt của SAFARI nhưng ảnh hưởng đối với website load iframe có sử dụng cần session.
Mục tiêu cần đạt được: Mở được session của host (là link IFRAME).
Muốn mở được session sẽ gặp trở ngại CROSS Browser Session. Theo nguyên tắc bảo mật thì host nào được mở session ở host đó. Không có quyền mở session ở host khác.
Vì vậy: cần phải có quyền truy cập ở cả 2 host. Hoặc 1 số website như facebook có hỗ trợ mở session. (cái này tìm hiểu facebook nhé).
Ví dụ đây: file index.php có chứa iframe
<iframe id="blockrandom" name="contentframe" src="http://example_target.com" width="100%" height="1850"/>
Cách xử lý 1: Dùng trình duyệt safari mở 1 example_target.com, sau đó load file có chưa iframe. Thì mọi việc sẽ chạy bình thường. Nguyên nhân là session đã mở ít nhất 1 lần, sau đó safari sẽ tự nhận. BAD
Cách xử lý 2: Dùng trình duyệt safari viết thêm vào file index.php để tự động mở 1 new tab hoặc new window. Cách này suy nghĩ thì đúng nhưng ko làm được mặc dù nguyên lý gần giống cách 1 là mở example_target.com, nguyên nhân Safari chặn ko cho tự động popup.SO BAD
Cách xử lý 3: Redirect trực tiếp. GOOD
HOST 1: file index.php kiểm tra là browser safari thì redirect đến HOST 2 và open session.
HOST 2: open session: tạo mới file InitSession.php thì phải dùng PHP để open, sau khi open thì redirect lại HOST 1. (phải làm như vậy thì session mới mở được).
HOST 1 kiểm tra và họat động bình thường.
Chi tiết cách 3:
HOST 1 file index.php
<?php if ( ! count($_COOKIE) > 0 && strpos($_SERVER['HTTP_USER_AGENT'], 'Safari')&& $_GET['session']!='open') { ?>
<script type="text/javascript">
window.top.location.href = 'http://example_target.com/InitSession.php';
</script>
<?php
}
?>
Start iframe<br/>
<iframe id="blockrandom" name="contentframe" src="http://example_target.com" width="100%" height="600px"/>
End iframe<br/>
HOST 2 file InitSession.php
<?php
//inside setcookie.php
header('P3P: CP="CAO PSA OUR"');
session_start();
echo
'<script>
top.location = "http://host1.com/index.php?session=open";
</script>';
?>
Nguyên nhân: trình duyệt safari chống các tự động popup.
Ảnh hưởng: đây là suy nghĩ tốt của SAFARI nhưng ảnh hưởng đối với website load iframe có sử dụng cần session.
Mục tiêu cần đạt được: Mở được session của host (là link IFRAME).
Muốn mở được session sẽ gặp trở ngại CROSS Browser Session. Theo nguyên tắc bảo mật thì host nào được mở session ở host đó. Không có quyền mở session ở host khác.
Vì vậy: cần phải có quyền truy cập ở cả 2 host. Hoặc 1 số website như facebook có hỗ trợ mở session. (cái này tìm hiểu facebook nhé).
Ví dụ đây: file index.php có chứa iframe
<iframe id="blockrandom" name="contentframe" src="http://example_target.com" width="100%" height="1850"/>
Cách xử lý 1: Dùng trình duyệt safari mở 1 example_target.com, sau đó load file có chưa iframe. Thì mọi việc sẽ chạy bình thường. Nguyên nhân là session đã mở ít nhất 1 lần, sau đó safari sẽ tự nhận. BAD
Cách xử lý 2: Dùng trình duyệt safari viết thêm vào file index.php để tự động mở 1 new tab hoặc new window. Cách này suy nghĩ thì đúng nhưng ko làm được mặc dù nguyên lý gần giống cách 1 là mở example_target.com, nguyên nhân Safari chặn ko cho tự động popup.SO BAD
Cách xử lý 3: Redirect trực tiếp. GOOD
HOST 1: file index.php kiểm tra là browser safari thì redirect đến HOST 2 và open session.
HOST 2: open session: tạo mới file InitSession.php thì phải dùng PHP để open, sau khi open thì redirect lại HOST 1. (phải làm như vậy thì session mới mở được).
HOST 1 kiểm tra và họat động bình thường.
Chi tiết cách 3:
HOST 1 file index.php
<?php if ( ! count($_COOKIE) > 0 && strpos($_SERVER['HTTP_USER_AGENT'], 'Safari')&& $_GET['session']!='open') { ?>
<script type="text/javascript">
window.top.location.href = 'http://example_target.com/InitSession.php';
</script>
<?php
}
?>
Start iframe<br/>
<iframe id="blockrandom" name="contentframe" src="http://example_target.com" width="100%" height="600px"/>
End iframe<br/>
HOST 2 file InitSession.php
<?php
//inside setcookie.php
header('P3P: CP="CAO PSA OUR"');
session_start();
echo
'<script>
top.location = "http://host1.com/index.php?session=open";
</script>';
?>
Thứ Sáu, 1 tháng 11, 2013
Xem version PHP và đường dẫn tuyệt đối trên host
Một vài trường hợp cần xem đường dẫn tuyệt đối trên host
Và xem version PHP
Download file sau: phpinfo.php
Link dự phòng:
https://drive.google.com/file/d/0B785Epf6q5XlVENZeFpJTUJIc0k/edit?usp=sharing
Và xem version PHP
Download file sau: phpinfo.php
Link dự phòng:
https://drive.google.com/file/d/0B785Epf6q5XlVENZeFpJTUJIc0k/edit?usp=sharing
Đăng ký:
Bài đăng (Atom)










