Thứ Hai, 3 tháng 12, 2007

Sở hữu ngay tên miền ngắn gọn cho Blog của bạn (Getting A New Free Domain)

Lỗi hay mắc phải khi add blog vào Google sitemap.

TQVN có xem qua khá nhiều trang web hướng dẫn cách đưa blog(cụ thể là trang blogspot.com) của bạn vào google sitemap thông qua feed (atom.xml hoặc rss.xml). Mặc dù các hướng dẫn đó rất chi tiết và sinh động, nhưng chưa thể gọi là đầy đủ, vì nó không đề cập đến 2 vấn đề (rất quan trọng) trong cách đưa blog vào google sitemap thông qua feed:

- Feed Redirection (bạn nào dùng feedburner chắc chắn sẽ bị báo lỗi khi index blog của mình)

- Số post tối đa mà google đánh chỉ mục(index) dựa vào feed được mặc định chỉ là 25 post. Có nghĩa là sitemap trang blog của bạn chỉ bao gồm 25 entries mới nhất(tại thời điểm google index blog của bạn). Vậy thì những entries còn lại của bạn thì sao? Tất nhiên chúng chẳng được index bởi google sitemap!

Bài này sẽ hướng dẫn bạn cách add blog của bạn vào google sitemaps và khắc phục 2 vấn đề trên.

1/Google Sitemaps là gì?
Google Sitemaps là một tiện ích trong webmaster tool được phát triển bởi Google với mục đích cung cấp một cách thức đơn giản cho người dùng có thể mô tả cấu trúc website của mình nhằm tối ưu hóa Google search, giúp cho các spiders của Google dễ dàng hơn trong việc đọc thông tin và đánh chỉ mục cho website của bạn. Việc này sẽ giúp cho web của bạn có khả năng xuất hiện cao hơn trong các kết quả được trả về từ các kết quả tìm kiếm của Google. Nghĩa là bạn sẽ có nhiều visitors hơn đến thăm website của mình.

2/Add blog của bạn vào Google sitemaps

- Đăng nhập vào google sitemaps: Nhấn vào đây
Nếu chưa có google account thì bạn cần phải đăng ký 1 account với google

-Sau khi đăng nhập vào Dashboard, nhập URL blog mà bạn muốn add vào google sitemaps(1), sau đó nhấn "Add Site"(2)











-Nhấn Verify để xác nhận đó là blog của bạn(3)










-Tại mục "Choose verification method" chọn "Add a meta tag"(3a), sau đó copy đoạn code mà google cung cấp(3b)












-Login vào Blogger bằng 1 khung cửa sổ mới( Đừng tắt khung cửa sổ đang làm việc nhé, vì lát nữa bạn còn phải nhấn nút "Verify"). Chọn thẻ "Template"--->"Edit HTML" và paste đoan code mà google cung cấp vào ngay dưới thẻ head. (Xem hình bên dưới)









Nhấn Save Tamplate để lưu lại.

-Quay trở lại Google sitemaps, nhấn "Verify" để hoàn tất công việc còn dang dỡ. Bạn đã hoàn tất thủ tục xác nhận chủ sở hữu blog mà bạn đăng ký.

-Trở lại Dashboard của google sitemaps. Nhấn "Add" để add sitemap cho blog của bạn(4). Ở Khung "Choose Type" bạn chon "Add General Sitemap"(5)














Paste đoạn code atom.xml?redirect=false&start-index=1&max-results=100 vào khung phía dưới(6). Nghĩa là URL sitemaps của bạn là: http://yourblogurl.blogspot.com/atom.xml?redirect=false&start-index=1&max-results=100

Nhấn Add General Web Sitemap để hoàn tất. Xong, bạn đã hoàn tất thủ tục để google đánh chỉ mục(index) các entry cho blog của bạn rồi đó.

(Note: bạn có thể thay
atom.xml?redirect=false&start-index=1&max-results=100

bằng
rss.xml?redirect=false&start-index=1&max-results=100
Cả hai cái đều có tác dụng như nhau)

Note:
Hầu hết các bạn khi add sitemap cho blog của mình đều chỉ thêm vào atom.xml hoặc rss.xml tại bước 6(http://yourblogurl.blogspot.com/atom.xml hoặc http://yourblogurl.blogspot.com/rss.xml) Điều này sẽ dẫn đến 2 hệ quả

1. Google gặp khó khăn trong việc index blog của bạn nếu bạn dùng feed redirection (các bạn dùng feedburner hay gặp lỗi khi index bog của mình vì URL của các entry bị chuyển hướng sang feedburner) --->Thêm vào ?redirect=false phía sau atom.xml sẽ ngăn việc feed của bạn bị chuyển hướng khi google index các entry trong blog của bạn.

2. Số entry tối đa mà google mặc định cho feed chỉ là 25 post mới nhất. Như vậy Google chỉ lưu lại 25 entries mới nhất của bạn trong sitemap của nó---> Bạn cần phải thay đổi mặc định này bằng đoạn code &start-index=1&max-results=100 . Đoạn code này báo cho google biết nó cần index blog của bạn với 100 posts mới nhất. Nếu blog của bạn nhiều hơn 100 posts? Bạn cần phải add thêm 1 sitemap với đoạn code:

atom.xml?redirect=false&start-index=101&max-results=100

Bạn để ý số 101 nhé, nó báo cho google biết là cần index 100 entries trong blog của bạn, bắt đầu từ entry số 101. Nếu bạn có nhiều hơn 200 post thì bạn lại phải add thêm 1 sitemap nữa:

atom.xml?redirect=false&start-index=201&max-results=100

Cứ tiếp tục như thế. Ví du TQVN hiện tại có tất cả 750 posts, Các URL sitemap lần lượt của mình là
thuquanvietnam.blogspot.com/atom.xml?redirect=false&start-index=1&max-results=100
thuquanvietnam.blogspot.com/atom.xml?redirect=false&start-index=101&max-results=100
thuquanvietnam.blogspot.com/atom.xml?redirect=false&start-index=201&max-results=100
thuquanvietnam.blogspot.com/atom.xml?redirect=false&start-index=301&max-results=100
thuquanvietnam.blogspot.com/atom.xml?redirect=false&start-index=401&max-results=100
thuquanvietnam.blogspot.com/atom.xml?redirect=false&start-index=501&max-results=100
thuquanvietnam.blogspot.com/atom.xml?redirect=false&start-index=601&max-results=100
http://thuquanvietnam.blogspot.com/atom.xml?redirect=false&start-index=701&max-results=100

Chúc các bạn thành công.
Have a good day!

nguồn: thuquanvietnam.blogspot.com

Xem chi tiết...

Cảm ơn bạn đã đến thăm Blog của tôi, hãy thêm RSS feed của tôi vào Blog, Website hoặc chương trình đoc RSS của bạn để cập nhật thông tin nhanh hơn.

Thứ Sáu, 23 tháng 11, 2007

Sở hữu ngay tên miền ngắn gọn cho Blog của bạn (Getting A New Free Domain)

Recent Post và Recent Comments

Blogspot cho đến hiện tại đã hỗ trợ rất nhiều dạng widget, ngoài các widget chính như Label, Archive, About, còn có các widget phụ rất hữu ích khác như LinkList, Video, About...(xem thêm tại đây). Tuy nhiên vẫn chưa thấy hỗ trợ 2 widget cũng không kém quan trọng đó là Recent Post và Recent Comments.

Thực ra thì việc tạo hai widget này giống nhau cả, có nhiều cách tạo nhưng nguyên tắc chung vẫn là lấy feed. Feed của bài viết có dạng http://yourblog.blogspot.com/feeds/posts/default còn của comment là http://yourblog.blogspot.com/feeds/comments/default?alt=rss, chỗ màu đỏ là địa chỉ blog của bạn. Sau đây tôi sẽ hướng dẫn sơ cách tạo Recent Post. Đối với Recent Comment bạn làm tương tự.

- Tạo một widget dạng HTML/Javascript với tiêu đề là (có thể khác) Recent Post
- Bằng cách sử dụng link feed của bài viết (có dạng) đã nêu ở trên, chuyển nó thành mã javascript. Cách chuyển có thể xem tại đây: Feed2Js
- Copy và Paste toàn bộ đoạn mã nhận được vào nội dung của widget. Thế là xong xuôi rồi đấy.

*** Nếu bạn muốn trang trí widget của mình trang trọng một chút, ví dụ như làm khung cho widget, thì làm khác trên một chút. Tạo widget không có tiêu đề và đặt đoạn mã feed2js vào giữa đoạn code tạo khung. Code tạo khung có thể tham khảo ở đây: Xem Code 4

Recent Post Widget sau khi trang trí như trên sẽ có dạng như sau:






 Recent Posts







nguồn: vietwebguide.blogspot.com

Xem chi tiết...

Cảm ơn bạn đã đến thăm Blog của tôi, hãy thêm RSS feed của tôi vào Blog, Website hoặc chương trình đoc RSS của bạn để cập nhật thông tin nhanh hơn.
Sở hữu ngay tên miền ngắn gọn cho Blog của bạn (Getting A New Free Domain)

Học tiếng Anh với Google

Bài viết dưới đây tham khảo từ Trung tâm ngôn ngữ thuộc Đại học Stanford viết về cách sử dụng Google để nâng cao khả năng viết tiếng Anh.

Tự biên tập khi học viết: Viết là một kỹ năng rất khó đòi hỏi sự kiên trì và luyện tập thường xuyên. Sau khi hoàn thành một bài viết, bạn muốn biết bạn mắc lỗi ngữ pháp hay cách chọn từ ở đâu. Cách thứ nhất, bạn gửi đến thầy cô giáo hướng dẫn của mình, như thế ai đó đã làm giúp bạn chỉnh sửa lại bài viết rồi. Một lựa chọn khác, khi bạn phải tự mình biên tập lại, hãy nhớ đến Google như một người bạn luôn sát cánh bên bạn đấy!

Ví dụ, giả sử rằng khi bạn vừa hoàn thành xong bài viết, trong đó có một câu mà bạn cảm thấy chưa chắc chắn: “In the first part I discuss the Einstein’s theory.” (Trong phần đầu tiên, tôi bàn về thuyết Einstein)

Bây giờ chúng ta băn khoăn không biết có phải là:

1- “in first part” hay là “in a first part” hay “in the first part”?
2- “I discuss” hay “I will discuss”?
3- “the Einstein’s theory” hay “Einstein’s theory”

Chúng ta sẽ thử kiểm tra qua Google nhé!

“in first part” – 52.000
“in a first part” – 114.000
“in the first part” – 1.210.000

Các con số kết quả tìm được đều rất lớn chứng tỏ việc sử dụng phổ biến những cụm từ này khi viết. Tuy nhiên, trong số đó “in the first part” rõ ràng có mức phổ biến lớn hơn rất nhiều hai trường hợp còn lại.

Thêm nữa, để giúp bạn tự tin hơn về quyết định có chọn cách viết “in the first part” hay không, hãy click chuột vào phiên bản “cached” trong trang kết quả tìm được. Khi đó, bạn có thể xác nhận thêm rằng nguồn tài liệu đó từ đâu đến, và cụ thể hơn là cụm từ bạn tìm kiếm sẽ được tô đậm trong trang đó. Như thế, bạn sẽ có cơ sở để tin tưởng rằng cách dùng như vậy là hợp lý và chính xác nhất.

Trong trường hợp thứ hai, câu hỏi được đặt ra là bạn nên dùng thì tương lai “will” hay không?

“I discuss” – 1.240.000
“I will discuss” – 1.060.000

Ồ, trong trường hợp này, thật khó để nói. Vậy ta phải làm sao? Bạn có thể tìm kiếm kết qủa cho cả cụm từ:

“In the first part I discuss” – 3.530
“In the first part I will discuss” – 6.090

Dựa vào kết quả bổ sung này, các bạn có thể tin tưởng hơn với cách dùng thứ hai vì lượng kết quả tìm được gần gấp đôi.

Đến trường hợp thứ 3: Bạn có nên dùng chữ mạo từ “the” hay không?

“the Einstein’s theory” – 1.960
“Einstein’s theory” – 475.000

Dựa vào sự chênh lệch qúa lớn này, bạn có thể tự tin rằng cách viết thứ hai là chính xác. Đồng thời, từ đây, bạn cũng có thể rút ra một quy luật chung cho những cấu trúc tương tự

Lý giải kết qủa tìm được:

Một điều thú vị là nếu bạn thử tìm qua Google với những từ và cấu trúc câu mà theo các cuốn sách ngữ pháp tiếng Anh cơ bản thì “là sai ngữ pháp”, thế nhưng Google vẫn tìm thấy.

Ví dụ tìm “I be happy” (cấu trúc câu đúng là “I am happy”) bạn có thể sẽ ngạc nhiên vì số lượng kết qủa là 155.000 lượt. Trong đó, những kết qủa liệt kê lên đầu tiên sẽ là “Will I be happy”, “How can I be happy”, “Should I be happy” và những cấu trúc tương tự. Có thể chúng là những trường hợp mà cách sử dụng “ I be happy” được chấp nhận, nhưng bạn không có đủ thời gian để lướt qua hàng trăm trang web để tìm ra đâu là cách sử dụng đúng.

Để tránh trường hợp này, bạn có thể thêm vào một từ, hoặc một cụm từ để “bắt” cụm từ bạn đang kiểm tra trở thành phần đầu tiên của một câu. Bạn thêm vào cụm từ “I said” nhé rồi tìm kiếm cả cụm từ: (sau đó, bạn có thể tự mình kiểm tra bằng cách thêm cụm từ khác, ví dụ “I know” chẳng hạn)

“I said I be happy” – 2
“I said I am happy” – 516

Sự chênh lệch lớn này sẽ giúp bạn có quyết định lựa chọn của mình.

Còn trong trường hợp nhầm lẫn giữa danh từ đếm được và danh từ không đếm được thì sao? Đây là điểm khá thú vị. Lấy ví dụ với từ “equipment”. Đây là một danh từ không đếm được nên dạng số nhiều của nó “equipments” là không hợp lý. Thế nhưng khi bạn thử tìm trên Google thì kết quả như sau:

“equipment” – 542.000.000
“equipments” – 14.000.000

14.000.000 kết qủa cho “equipments”! Đó cũng là một con số rất lớn! Tuy nhiên nếu bạn vào phần “Cached” sẽ thấy 4 kết qủa đầu tiên là những trang web từ Trung Quốc, Đài Loan và Ấn Độ, kết qủa thứ 5 là từ Canada. Như thế ta có thể suy đoán rằng “equipments” có lẽ được chấp nhận trong tiếng Anh của người Ấn. Nhưng nếu bạn là người học Anh ngữ của người Anh hay người Mỹ thì đừng dùng như vậy nhé!

Ngoài ra, Google còn giúp chúng ta nhiều chức năng ngôn ngữ khác như tra từ điển; giúp những dịch giả chuyên nghiệp kiểm tra và sáng tạo ra những khái niệm tương đương giữa hai nền văn hóa khác nhau qua việc tìm kiếm bằng hình ảnh và nhiều chức năng khác nữa.

Và để kết thúc bài viết này, tôi cũng xin nhắc lại một lần nữa Google không thể giúp bạn làm được tất cả. Tính chính xác về ngôn ngữ của Google chỉ là tương đối. Bạn vẫn cần phải kết hợp với những cuốn sách giáo khoa Anh ngữ chính thống. Chúc các bạn thành công trong qúa trình học tiếng Anh của mình.

Nguyễn Thế Vinh
Nguồn: www.tuoitre.com.vn

Xem chi tiết...

Cảm ơn bạn đã đến thăm Blog của tôi, hãy thêm RSS feed của tôi vào Blog, Website hoặc chương trình đoc RSS của bạn để cập nhật thông tin nhanh hơn.

Thứ Hai, 19 tháng 11, 2007

Sở hữu ngay tên miền ngắn gọn cho Blog của bạn (Getting A New Free Domain)

Sử dụng kỹ thuật mở rộng bài đăng theo kiểu hiển thị Peekaboo

Như bạn thấy, mỗi bài đăng trên blog này chỉ hiển thị phần đầu và mỗi khi bạn bấm trên Đọc tiếp... thì bài viết mới hiện ra đầy đủ, không phải tải lại, giúp blog nhanh hơn. Kỹ thuật này được phát triển bởi Ramani, khác với cách chèn đọc thêm (bài đăng phải tải lại một lần nữa) mà tôi có dịp giới thiệu trước đây. Để sử dụng kỹ thuật này trên blog, hãy thực hiện theo các bước sau:


Bước 1: Đăng nhập vào Blogger và chọn thẻ Template để sao lưu template của bạn.

Bước 2: Tại Edit HTML (Chỉnh sửa HTML) bạn kéo thanh trượt tìm tìm thẻ </head> (có thể nhấn đồng thời hai phím Ctrl + F để tìm) sau đó chép toàn bộ đoạn code dưới đây, dán phía trên thẻ này và lưu lại.



<b:if cond='data:blog.pageType != "item"'>
<script type="text/javascript">

var fade = false;
function showFull(id) {
var post = document.getElementById(id);
var spans = post.getElementsByTagName('span');
for (var i = 0; i &lt; spans.length; i++) {
if (spans[i].id == "fullpost") {
if (fade) {
spans[i].style.background = peekaboo_bgcolor;
Effect.Appear(spans[i]);
} else spans[i].style.display = 'inline';
}
if (spans[i].id == "showlink")
spans[i].style.display = 'none';
if (spans[i].id == "hidelink")
spans[i].style.display = 'inline';
}
}


function hideFull(id) {
var post = document.getElementById(id);
var spans = post.getElementsByTagName('span');
for (var i = 0; i &lt; spans.length; i++) {
if (spans[i].id == "fullpost") {
if (fade) {
spans[i].style.background = peekaboo_bgcolor;
Effect.Fade(spans[i]);
} else spans[i].style.display = 'none';
}
if (spans[i].id == "showlink")
spans[i].style.display = 'inline';
if (spans[i].id == "hidelink")
spans[i].style.display = 'none';
}
post.scrollIntoView(true);
}

function checkFull(id) {
var post = document.getElementById(id);
var spans = post.getElementsByTagName('span');
var found = 0;
for (var i = 0; i &lt; spans.length; i++) {
if (spans[i].id == "fullpost") {
spans[i].style.display = 'none';
found = 1;
}
if ((spans[i].id == "showlink") &amp;&amp; (found == 0))
spans[i].style.display = 'none';
}
}

</script>

</b:if>

Bước 3: Bạn click chọn Expand Widget Templates sau đó tìm id='post' (có thể dùng Ctrl + F để tìm) có trên đoạn mã. Bây giờ hãy bổ sung các đoạn mã màu đỏ nằm đúng vị trí như dưới đây. Lưu ý: Một số template sẽ không có uncustomized-post-template nhưng bạn cũng không phải lo.


<b:includable id='post' var='post'>
<div class='post uncustomized-post-template' expr:id='"post-" + data:post.id'>

<a expr:name='data:post.id'/>
<b:if cond='data:post.title'>
<h3 class='post-title'>
<b:if cond='data:post.url'>
<a expr:href='data:post.url'><data:post.title/></a>

<b:else/>
<data:post.title/>
</b:if>
</h3>
</b:if>

<div class='post-header-line-1'/>

<div class='post-body'>

<b:if cond='data:blog.pageType == "item"'>

<p><data:post.body/></p>

<b:else/>

<style>#fullpost {display:none;}</style>
<p><data:post.body/></p>
<span id='showlink'>
<p><a href='javascript:void(0);' expr:onclick='"javascript:showFull(\"post-" + data:post.id + "\");"'>Đọc thêm ...</a></p>

</span>
<span id='hidelink' style='display:none'>
<p><a href='javascript:void(0);' expr:onclick='"javascript:hideFull(\"post-" + data:post.id + "\");"'>Tóm tắt ...</a></p>
</span>
<script type='text/javascript'>

checkFull("post-" + "<data:post.id/>");
</script>
</b:if>

<div style='clear: both;'/> <!-- clear for photos floats -->
</div>


Bạn có thể tùy biến Đọc thêm ...Tóm tắt ... nằm trong đoạn mã trên theo ý thích của mình.

Bước 4: Thay đổi cách đăng bài. Bây giờ mỗi bài đăng của bạn phải thực hiện theo cấu trúc sau:


Phần đầu hay tóm tắt
<span id="fullpost">
Phần còn lại hay mở rộng
</span>

Bạn có thể tham khảo thêm nội dung Sử dụng kỹ thuật mở rộng bài viết của Template ba cột mà trước đây tôi có dịp giới thiệu để biết cách dùng chi tiết hơn.


Cập nhật thêm (Bước 3):

Để thao tác đơn giản hơn, thay vì bổ sung các đoạn mã màu đỏ như bước 3 ở trên bạn hãy
copy hết tất cả mã nằm trong khung đóthay thế đoạn mã nằm trong khung dưới đây có trong Edit HTML (Nhớ check Expand Widget Templates ở trên khung quản lý đoạn mã trước):


<b:includable id='post' var='post'>
<div class='post hentry uncustomized-post-template'>
<a expr:name='data:post.id'/>
<b:if cond='data:post.title'>
<h3 class='post-title entry-title'>
<b:if cond='data:post.link'>
<a expr:href='data:post.link'><data:post.title/></a>
<b:else/>
<b:if cond='data:post.url'>
<a expr:href='data:post.url'><data:post.title/></a>
<b:else/>
<data:post.title/>
</b:if>
</b:if>
</h3>
</b:if>

<div class='post-header-line-1'/>

<div class='post-body entry-content'>
<p><data:post.body/></p>
<div style='clear: both;'/> <!-- clear for photos floats -->
</div>

Chúc thành công!

nguồn: thuthuatblog.com

Xem chi tiết...

Cảm ơn bạn đã đến thăm Blog của tôi, hãy thêm RSS feed của tôi vào Blog, Website hoặc chương trình đoc RSS của bạn để cập nhật thông tin nhanh hơn.
Sở hữu ngay tên miền ngắn gọn cho Blog của bạn (Getting A New Free Domain)

Sao lưu và phục hồi template

BACKUP

Lưu lại bản sao tất cả những gì có trong Edit HTML rất quan trọng, bởi vì bạn có thể thao tác sai, làm hỏng template trong khi chỉnh sửa, quay lại template trước đó trường hợp không muốn dùng thay đổi… và quan trọng hơn không phải mất công làm lại từ đầu. Backup trước khi thay đổi không thừa!

Việc này bạn có thể làm rất đơn giản, không tốn nhiều thời gian. Vào Template | Edit HTML, bạn click Download Full Template. xem hình.




RESTORE

Để phục hồi lại Template, hay bạn có một template từ đâu đó muốn sử dụng thì có thể thực hiện như sau: Click Browse -> chọn file template lưu trên ổ cứng (file có phần mở rộng .xml) và nhấn Restore.

KHẮC PHỤC LỖI

Nếu template mà bạn sử dụng hiện tại có một hoặc nhiều widget (HTML, LinkList, Blog Archive,…) sẳn thì bạn có thể gặp lỗi. Để khắc phục lỗi, có hai cách đáng lưu ý:

Cách một: Remove tất cả widget đã đưa vào. Nếu là những widget HTML/JavaScript bạn có thể chép code lưu tạm trên Notepad, nếu là các wigdet khác bạn đành chấp nhận xóa đi và làm lại.

Cách hai:
Không cần xóa các widget đã đưa vào, lỗi xuất hiện xảy ra thông báo trùng ID. Chẳng hạn có 2 widget: HTML1, bạn chỉ việc tìm cả hai widget này sửa một trong hai widget HTML1 thành HTML2 hay một số nào đó không trùng với số widget có trên Layout (đếm trên đó để biết), click Save Templates để lưu lại, nếu tiếp tục bị lỗi này bạn cứ đổi ID cho đến khi nào không còn lỗi nữa, tương tự cho các widget khác.

Trong cả hai cách, bạn có thể gặp trường hợp thông báo xóa một hoặc nhiều widget, cứ click CONFIRM & SAVE (đồng ý và lưu lại) bạn sẽ hoàn tất, muốn chèn vào thì hãy làm sau đó. Ví dụ trên hình dưới đây: Lỗi yêu cầu xóa Blog Archive.



Cuối cùng, hãy luôn nhớ rằng trước khi thực hiện thay đổi trên Edit HTML bạn phải backup đề phòng.
nguồn: thuthuatblog.com

Xem chi tiết...

Cảm ơn bạn đã đến thăm Blog của tôi, hãy thêm RSS feed của tôi vào Blog, Website hoặc chương trình đoc RSS của bạn để cập nhật thông tin nhanh hơn.