將Google Adsense嵌入文章中

很早以前就想將Google Adsense嵌入文章中,感覺這樣整體看起來會比較豐富。只是過去覺得修改程式碼很麻煩,如果風格一更新,所有的程式碼又要再重新編輯,因此選擇使用外掛的方式。沒想到最近想要搬家,原本使用嵌入Google Adsense的外掛太久沒有更新,已經搜尋不到,現在若是要安裝就只能將舊的檔案移到新的檔案中。這時讓我驚覺到使用外掛程式的風險,若是將來外掛的更新速度跟不上wordpress版本的更新速度,或是外掛終止開發,那麼外掛就無法繼續使用,過去所有因為外掛而嵌入的Google Adsense全部都會停止運作,現出原型程式碼。

因此,一勞永逸的方法就是回歸到最原始的方式,『修改原始碼』,雖然未來會有因為風格更新而造成要重新修改原始碼的問題,但這也比使用外掛,若是外掛終止運作後,卻要一篇文章一篇文章的去修改因外掛修改而造成原始碼現形的問題要來得方便許多。所以晚上只好打起精神來尋找看看Google Sense的程式碼應該嵌入在哪個地方。

目前Wordpress所附的兩種風格分別是「Twenty-ten」、「Twenty-eleven」,花了一些時間終於都找到要將程式碼至於何處,分述如下:
【Twenty-ten】
開啟風格中的loop-single.php檔
尋找

1
<?php the_content(); ?>

之前加上Google Adsense程式碼

1
2
3
4
5
6
7
8
9
10
11
12
13
<div style="float: right;">
<script type="text/javascript"><!--
google_ad_client = "ca-pub-3221477091818786";
/* 300x250, 已建立 2011/3/25 */
google_ad_slot = "8158705572";
google_ad_width = 300;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</div>

其中程式碼中的

1
<div style="float: right;">

可以讓你的廣告組顯示在右方,文字會會圍繞在廣告左方和下方。也可以設為left,這樣廣告會顯示在左方。
之前因為Google Adsense擺放的位置一直很不滿意,常常一放就在文章標題的開頭處,有時候又跑到回應的最尾端,怎麼調都調不好。幸好在網路上看到這篇教學文章,原本是在教導AdSense-Deluxe這個外掛。但我發現這個外掛也很久沒有更新,且只是多一個動作把Google Adsense放到後台做管理,要顯示依舊要去研究原始碼,將程式碼放到適當的位置,有點多此一舉的感覺。但是在文章中看到一點,有教導如何將程式碼放到文章的右上角,這是我找了很久,一直都找不到的教學,很幸運可以在這篇文章中看到。

【Twenty-eleven】
Twenty-ten和Twenty-eleven風格雖然都是wordpress的團隊製作,但是放程式碼的位置是截然不同。在Twenty-ten中,會尋找到從loop-single.php修改完全是誤打誤撞,一個檔案一個檔案打開來看才尋找到的,但是在Twenty-eleven中,卻沒有loop-single.php這個檔案。在single.php這個檔案中試了很久,始終無法將Google Adsense放入文章中。後來看到似乎是用get template part()這個函數來呼叫文章內容,於是上網搜尋了一下這個函數的用途。才發現

1
<?php get_template_part( $slug, $name ); ?>

的意思就是For the parameter, if the file is called "{slug}-{name}.php".
換句話說,在Twenty-eleven這個風格中的single.php呼叫文章內容的程式碼是

1
<?php get_template_part( 'content', 'single' );?>

那麼我就應該去尋找content-single.php檔,
其餘步驟同Twenty-ten修改模式。

本篇發表於 部落格架設。將永久鍊結加入書籤。

發表迴響

您的電子郵件位址並不會被公開。 必要欄位標記為 *

*

您可以使用這些 HTML 標籤與屬性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>