Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Aşağıdaki bölümlerde anahtar sözcüklere karşı çeşitli eylemler gerçekleştiren betik örnekleri gösterilir.
Anahtar sözcük ekleme
Anahtar sözcük eklemek için önce anahtar sözcüğün ekleneceği reklam grubunu alın.
AdGroupSelector nesnesini kullanarak reklam grubunu seçin. yönteminin withIds kullanılması, ad grubunun adını withCondition yöntemine geçirmekten daha iyi performans sağlar.
Ardından, anahtar sözcüğün özelliklerini belirtmek için kullandığınız bir oluşturucuyu almak için reklam grubunun newKeywordBuilder yöntemini çağırın. Belirtmeniz gereken tek özellik anahtar sözcüğün metnidir (yöntemine withText bakın). Metin eşleşme türünü içermelidir (tümcecik eşleştirme türü tırnak işaretleri, tam eşleşme türü için köşeli ayraçlar, geniş eşleşme türü için hiçbir şey yoktur).
Bir CPC değeri belirtmezseniz, varsayılan olarak reklam grubunun CPC değeri olur. Varsayılan olarak anahtar sözcüğün durumu etkindir.
Oluşturucunun build yöntemini çağırmak zaman uyumsuz olarak anahtar sözcüğü oluşturur; Betikler, betik sonlandırilmeden önce veya derleme işleminin yöntemlerinden birini çağırırsanız anahtar sözcüğü bir noktada ekler. Bu işlem hakkında bilgi için bkz. Oluşturucu nedir?
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}`);
}
}
}
}
Anahtar sözcüğü duraklatma
Bir anahtar sözcük eklediğinizde, anahtar sözcüğün durumu varsayılan olarak Etkin'dir. Anahtar sözcüğü duraklatmak için anahtar sözcüğün yöntemini çağırın pause . Anahtar sözcüğün durumunu belirlemek için anahtar sözcüklerin isEnabled ve isPaused yöntemlerini çağırın.
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();
}
}
Bir reklam grubundaki tüm anahtar sözcükleri alma
Bir reklam grubundaki tüm anahtar sözcükleri almak için önce AdsApp nesnesinin keywords yöntemini çağırarak seçiciyi alın.
withCondition Reklam grubunu ve kampanyayı belirtmek için yöntemini kullanın. Ardından, anahtar sözcük listesinde yinelemek için kullandığınız bir yineleyici almak için seçicinin get yöntemini çağırın. Yineleyicideki anahtar sözcük sayısını belirlemek için yineleyicinin yöntemini çağırın totalNumEntities .
Anahtar sözcük kimliklerine erişiminiz varsa, bunları kullanın. Varlıkları almak için kimlikleri kullanmak daha iyi performans sağlar. Filtre yöntemini kullanmak withCondition yerine yöntemini kullanın withIds . Örneğin, withIds(['12345']). Kimlikleri kullanarak alabildiğiniz varlık sayısıyla ilgili sınırlar vardır.
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();
}
}
Hesaptaki tüm anahtar sözcükleri alma
Betiklerin bir hesap için döndürebileceği anahtar sözcük sayısının bir sınırı vardır. Sınır tanımlanmamıştır ve değişebilir. Aşağıdaki örnekte, bir hesabın çok fazla anahtar sözcüğü olduğu durumları nasıl işleyebileceğiniz gösterilmektedir. Örnek, önce hesap düzeyindeki tüm anahtar sözcükleri getirmeye çalışır. "Çok fazla varlık var" hatası nedeniyle başarısız olursa, kampanya düzeyinde genellikle daha az varlık olduğundan, anahtar sözcükleri kampanyaya göre getirmek için birden çok çağrı yapmaya çalışır.
Yield anahtar sözcüğünü kullanma hakkında bilgi için bkz. Büyük varlık kümeleri alırken ödeme anahtar sözcüğünü kullanma.
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();
}
}
}
}
Anahtar sözcüğün performans verilerini alma
Anahtar sözcüğün performans ölçümlerini almak için anahtar sözcüğün getStats yöntemini çağırın. Anahtar sözcüğü aldığınızda, istediğiniz ölçüm verilerinin tarih aralığını belirtmeniz gerekir. Tarih aralığını LAST_MONTH veya BUGÜN gibi önceden tanımlanmış bir değişmez değer veya başlangıç ve bitiş tarihi kullanarak belirtebilirsiniz. Tarih aralığını belirtmek için anahtar sözcüğü seçtiğinizde yöntemlerden birini forDateRange kullanın (bkz . KeywordSelector).
Erişebileceğiniz ölçümlerin listesi için İstatistikler nesnesine bakın.
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.
}
}
Anahtar sözcüğün teklif değerini güncelleştirin.
Anahtar sözcüğün teklif değerinin nasıl güncelleştirildiğini gösteren bir örnek için bkz. Google hizmetlerini çağırma.