หมายเหตุ
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลอง ลงชื่อเข้าใช้หรือเปลี่ยนไดเรกทอรีได้
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลองเปลี่ยนไดเรกทอรีได้
ส่วนต่อไปนี้จะแสดงตัวอย่างของสคริปต์ที่ดําเนินการต่างๆ กับคําสําคัญ
เพิ่มคําสําคัญ
เมื่อต้องการเพิ่มคําสําคัญ ก่อนอื่นให้รับกลุ่มโฆษณาที่จะเพิ่มคําสําคัญ ใช้วัตถุ AdGroupSelector เพื่อเลือกกลุ่มโฆษณา การใช้ withIds เมธอดนี้ให้ประสิทธิภาพที่ดีกว่าการส่งชื่อกลุ่มโฆษณาใน withCondition เมธอด
ถัดไป ให้เรียกใช้เมธอด newKeywordBuilder ของกลุ่มโฆษณาเพื่อรับตัวสร้างที่คุณใช้ระบุคุณสมบัติของคําสําคัญ คุณสมบัติเดียวที่คุณต้องระบุคือข้อความของคําสําคัญ (ดูเม withText ธอด) ข้อความควรมีชนิดที่ตรงกัน (เครื่องหมายอัญประกาศสําหรับชนิดการจับคู่วลี วงเล็บเหลี่ยมสําหรับชนิดที่ตรงกันทุกประการ ไม่มีสิ่งใดสําหรับชนิดการตรงกันแบบกว้าง)
หากคุณไม่ได้ระบุค่า CPC จะมีค่าเริ่มต้นเป็นค่า CPC ของกลุ่มโฆษณา ตามค่าเริ่มต้น สถานะของคําสําคัญจะถูกเปิดใช้งาน
การเรียกวิธีการของตัว build สร้างจะสร้างคําสําคัญแบบอะซิงโครนัส สคริปต์จะเพิ่มคําสําคัญในบางจุดก่อนที่สคริปต์จะสิ้นสุดลง หรือถ้าคุณเรียกหนึ่งในเมธอดของการดําเนินการสร้าง สําหรับข้อมูลเกี่ยวกับกระบวนการนี้ ให้ดู ตัว สร้างคืออะไร
function main() {
// The ID of the ad group to add the keywords to.
// IDs in Scripts are string integers.
var adGroupId = 'AD GROUP ID GOES HERE';
var adGroup = getAdGroup(adGroupId);
// Keywords to add. Update as appropriate.
var keywords = [];
keywords.push({
text : "keyword 1",
cpc : 1.25,
finalUrl : 'http://www.example.com'
});
keywords.push({
text : "keyword 2",
cpc : 1.5,
finalUrl : 'http://www.example.com'
});
var operations = [];
if (adGroup != null)
{
for (var keyword of keywords) {
var operation = addKeyword(
adGroup,
keyword.text,
keyword.cpc,
keyword.finalUrl);
operations.push(operation);
}
}
else {
Logger.log("Unable to retrieve ad group, " + adGroupId);
}
checkBuildStatus(operations, keywords);
}
// Get the ad group using its ID.
function getAdGroup(id) {
var iterator = AdsApp.adGroups()
.withIds([id])
.get();
// Return the ad group if it exists; otherwise, null.
if (iterator.hasNext()) {
return iterator.next();
}
else {
return null;
}
}
// Add the keyword to the specified ad group.
function addKeyword(adGroup, text, cpc, finalUrl) {
return adGroup.newKeywordBuilder()
.withText(text)
.withCpc(cpc)
.withFinalUrl(finalUrl)
.build();
}
// Check the keyword's build status.
function checkBuildStatus(operations, keywords) {
for (var i = 0; i < operations.length; i++) {
if (!operations[i].isSuccessful()) {
for (var error of operations[i].getErrors()) {
Logger.log(`Failed to add, ${keywords[i].text}. Error: ${error}`);
}
}
}
}
หยุดคําสําคัญชั่วคราว
เมื่อคุณเพิ่มคําสําคัญ สถานะคําสําคัญจะเป็น เปิดใช้งาน ตามค่าเริ่มต้น เมื่อต้องการหยุดคําสําคัญชั่วคราว ให้เรียกเมธอดของคําสําคัญpause เมื่อต้องการระบุสถานะของคําสําคัญ ให้เรียกใช้คําสําคัญ isEnabled และเม isPaused ธอด
function main() {
var campaignName = 'CAMPAIGN NAME GOES HERE';
var adGroupName = 'AD GROUP NAME GOES HERE';
var keywordText = 'KEYWORD TEXT GOES HERE';
var iterator = AdsApp.keywords()
.withCondition(`Text = '${keywordText}'`)
.withCondition(`AdGroupName = '${adGroupName}'`)
.withCondition(`CampaignName = '${campaignName}'`)
.get();
while (iterator.hasNext()) {
var keyword = iterator.next();
keyword.pause();
}
}
รับคําสําคัญทั้งหมดในกลุ่มโฆษณา
หากต้องการรับคําสําคัญทั้งหมดในกลุ่มโฆษณา ก่อนอื่นให้เรียกใช้เมธอดของkeywordsวัตถุ AdsApp เพื่อรับตัวเลือก ใช้ withCondition วิธีการเพื่อระบุกลุ่มโฆษณาและแคมเปญ จากนั้น เรียกใช้วิธีการของ get ตัวเลือกเพื่อรับตัว วนซ้ํา ที่คุณใช้ในการวนซ้ําไปตามรายการคําสําคัญ เมื่อต้องการกําหนดจํานวนคําสําคัญในตัววนซ้ํา ให้เรียกใช้เมธอดของตัว totalNumEntities วนซ้ํา
ถ้าคุณสามารถเข้าถึงรหัสคําสําคัญได้ ให้ใช้คําสําคัญเหล่านั้นแทน การใช้ ID เพื่อรับเอนทิตีให้ประสิทธิภาพการทํางานที่ดีขึ้น ให้ใช้withConditionวิธีการกรองแทนwithIds ตัวอย่างเช่น withIds(['12345']). มีข้อจํากัดเกี่ยวกับจํานวนเอนทิตีที่คุณสามารถดึงข้อมูลโดยใช้ ID
function main() {
var campaignName = 'CAMPAIGN NAME GOES HERE';
var adGroupName = 'AD GROUP NAME GOES HERE';
var iterator = AdsApp.keywords()
.withCondition(`AdGroupName = '${adGroupName}'`)
.withCondition(`CampaignName = '${campaignName}'`)
.get();
while (iterator.hasNext()) {
var keyword = iterator.next();
}
}
การรับคําสําคัญทั้งหมดในบัญชี
แต่จํานวนคําสําคัญที่สคริปต์สามารถส่งคืนสําหรับบัญชีนั้นมีจํานวนจํากัด ขีดจํากัดไม่ได้กําหนดและอาจเปลี่ยนแปลงได้ ตัวอย่างต่อไปนี้แสดงวิธีที่คุณอาจจัดการกับกรณีที่บัญชีมีคําสําคัญมากเกินไป ตัวอย่างจะพยายามดึงข้อมูลคําสําคัญทั้งหมดที่ระดับบัญชีก่อน หากล้มเหลวเนื่องจากข้อผิดพลาด "มีเอนทิตีมากเกินไป" แอปจะพยายามเรียกหลายครั้งเพื่อดึงข้อมูลคําสําคัญตามแคมเปญ เนื่องจากโดยทั่วไปแล้วจะมีเอนทิตีที่ระดับแคมเปญน้อยกว่า
สําหรับข้อมูลเกี่ยวกับการใช้คําสําคัญ yield ให้ดู ใช้คําสําคัญ yield เมื่อรับชุดของเอนทิตีขนาดใหญ่
function* getEntities() {
const applyConditions = _ => _
.withCondition('CampaignStatus = ENABLED')
.withCondition('AdGroupStatus = ENABLED')
.withCondition('Status = ENABLED')
.withCondition("CombinedApprovalStatus = DISAPPROVED");
try {
// Get the account's keywords.
const keywords = applyConditions(AdsApp.keywords()).get();
while (keywords.hasNext()) {
yield keywords.next();
}
} catch (e) {
if (!e.message.startsWith('There are too many entities')) {
throw e;
}
// If there are too many keywords at the account level,
// get keywords by campaigns under the account.
const campaigns = AdsApp.campaigns().get();
while (campaigns.hasNext()) {
const campaign = campaigns.next();
const keywords = applyConditions(campaign.keywords()).get();
while (keywords.hasNext()) {
yield keywords.next();
}
}
}
}
รับข้อมูลประสิทธิภาพของคําสําคัญ
หากต้องการรับเมตริกประสิทธิภาพของคําสําคัญ ให้เรียกใช้เมธอด getStats ของคําสําคัญ เมื่อคุณได้รับคําสําคัญ คุณจะต้องระบุช่วงวันที่ของข้อมูลเมตริกที่คุณต้องการ คุณสามารถระบุช่วงวันที่โดยใช้สัญพจน์ที่กําหนดไว้ล่วงหน้า เช่น LAST_MONTH หรือ TODAY หรือวันที่เริ่มต้นและสิ้นสุด เมื่อต้องการระบุช่วงวันที่ ให้ใช้วิธีใดวิธีหนึ่ง forDateRange เมื่อคุณเลือกคําสําคัญ (ดู KeywordSelector)
สําหรับรายการของเมตริกที่คุณสามารถเข้าถึงได้ ให้ดูวัตถุ Stats
function main() {
var campaignName = 'CAMPAIGN NAME GOES HERE';
var adGroupName = 'AD GROUP NAME GOES HERE';
var keywordText = 'KEYWORD TEXT GOES HERE';
// Get the keyword. You need to specify the date range of the
// performance data you want to get.
var iterator = AdsApp.keywords()
.forDateRange('LAST_WEEK')
.withCondition(`Text = '${keywordText}'`)
.withCondition(`AdGroupName = '${adGroupName}'`)
.withCondition(`CampaignName = '${campaignName}'`)
.get();
// If the keyword is found, log some metrics.
if (iterator.hasNext()) {
var keyword = iterator.next();
var metrics = keyword.getStats(); // Gets the performance metrics.
}
}
อัปเดตค่าราคาเสนอของคําสําคัญ
ตัวอย่างที่แสดงวิธีอัปเดตค่าราคาเสนอของคําสําคัญ ให้ดูการโทรไปยังบริการของ Google