Get named pageItems - ff6347/extendscript GitHub Wiki
You can give pageItem a name by running this on a selected text frame:
app.selection[0].name = "bob";
to retrieve the text frame with the name "bob" you should do something like this:
function get_named_item(page) {
var named_item = null;
for (var i = 0; i < page.allPageItems.length; i++) {
var item = page.allPageItems[i];
if (item.name == "bob") {
named_item = item;
break;
}
}
return named_item;
}
var doc = app.activeDocument;
var p = doc.pages[0];
var res = get_named_item(p);
if (res === null) {
$.writeln(" :(");
} else {
$.writeln(" :)");
}
These names seem to be persistent. You can get it when you copy paste the item into a new doc and also when you restart InDesign.
Written for this stackexchange.com question.