Assigning slots to user interface elements
First Claim
Patent Images
1. A non-transitory computer-readable medium embodying a program executable in a computing device, the program causing the computing device to at least:
- receive a request to generate a content page from a browser executed on a client device;
identify a page template corresponding to the requested content page;
identify a plurality of slot groups associated with the page template, each of the slot groups comprising at least one page slot having a common geometry and located at a common location within the page template, the at least one page slot specifying a location within the page template in which content can be placed, the at least one page slot further being associated with a respective placement value indicating a value of the location within the page template, the respective placement value based upon an engagement metric expressing an amount of user interaction with the at least one page slot relative to other page slots;
generate a ranking of a plurality of user interface widgets according to an effectiveness metric, wherein the ranking is randomized according to a degree of randomness so that lowly ranked ones of the plurality of user interface widgets have an opportunity to be highly ranked according to the effectiveness metric, the plurality of user interface widgets configured to generate markup language for placement within the content page;
match the at least one page slot associated with each of the slot groups with at least a subset of the plurality of user interface widgets according to the ranking, the respectiveplacement value, and whether a geometry of the at least one page slot matches a requested geometry of a particular one of the plurality of user interface widgets;
request that a plurality of respectively ranked user interface widgets generate markup language for placement within a respectively ranked page slot;
determine, prior to transmission of the content page to the browser rendering the content page on behalf of the client device, whether any of the plurality of respectively ranked user interface widgets returns an error in response to the request to generate markup language;
prior to requesting that the at least a subset of the plurality of user interface widgets returning an error generating any markup language, initiate a request to generate markup language for a next highest ranked user interface widget according to the ranking that is not among the subset of the plurality of user interface widgets; and
generate the content page with the markup language generated by the plurality of respectively ranked user interface widgets that fail to return an error placed within the respectively ranked page slot.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed are various embodiments for assigning user interface widgets to page slots associated with a page template. In response to a request to generate a content page, content placement requests are then received from user interface widgets. The page slots are associated with a placement value indicating a value of the page slot relative to other page slots in the page template. The highest ranked user interface widgets according to an effectiveness metric or placement score are scheduled for placement in the content page.
-
Citations
25 Claims
-
1. A non-transitory computer-readable medium embodying a program executable in a computing device, the program causing the computing device to at least:
-
receive a request to generate a content page from a browser executed on a client device; identify a page template corresponding to the requested content page; identify a plurality of slot groups associated with the page template, each of the slot groups comprising at least one page slot having a common geometry and located at a common location within the page template, the at least one page slot specifying a location within the page template in which content can be placed, the at least one page slot further being associated with a respective placement value indicating a value of the location within the page template, the respective placement value based upon an engagement metric expressing an amount of user interaction with the at least one page slot relative to other page slots; generate a ranking of a plurality of user interface widgets according to an effectiveness metric, wherein the ranking is randomized according to a degree of randomness so that lowly ranked ones of the plurality of user interface widgets have an opportunity to be highly ranked according to the effectiveness metric, the plurality of user interface widgets configured to generate markup language for placement within the content page; match the at least one page slot associated with each of the slot groups with at least a subset of the plurality of user interface widgets according to the ranking, the respective placement value, and whether a geometry of the at least one page slot matches a requested geometry of a particular one of the plurality of user interface widgets; request that a plurality of respectively ranked user interface widgets generate markup language for placement within a respectively ranked page slot; determine, prior to transmission of the content page to the browser rendering the content page on behalf of the client device, whether any of the plurality of respectively ranked user interface widgets returns an error in response to the request to generate markup language; prior to requesting that the at least a subset of the plurality of user interface widgets returning an error generating any markup language, initiate a request to generate markup language for a next highest ranked user interface widget according to the ranking that is not among the subset of the plurality of user interface widgets; and generate the content page with the markup language generated by the plurality of respectively ranked user interface widgets that fail to return an error placed within the respectively ranked page slot.
-
-
2. A system, comprising:
-
at least one computing device; and a content page generation application executable in the at least one computing device, the content page generation application causing the at least one computing device to at least; receive a request to generate a content page; identify a page template corresponding to the requested content page, the page template comprising a plurality of page slots corresponding to a plurality of content locations in the content page, the page slots being ranked according to a placement value and being grouped into a plurality of slot groups, wherein members of a slot group have a common geometry and are located at a common location within the page template, and the placement value is based upon an engagement metric expressing an historical amount of user interaction with each of the page slots relative to other page slots; generate a ranking of a plurality of user interface widgets according to an effectiveness metric, wherein the ranking is randomized according to a degree of randomness so that lowly ranked ones of the plurality of user interface widgets have an opportunity to be highly ranked according to the effectiveness metric; match the plurality of page slots with at least a subset of the plurality of user interface widgets according to the ranking, the placement value, and whether a geometry of the at least one page slot matches a requested geometry of a particular one of the plurality of user interface widgets; determine, prior to transmission of the content page to a browser rendering the content page on behalf of a client device, whether any of the at least a subset of the plurality of user interface widgets returns an error in response to a request to generate markup language for placement in a page slot; prior to requesting that the at least a subset of the plurality of user interface widgets returning an error generating any markup language, initiate a request to generate markup language for a next highest ranked user interface widget according to the ranking that is not among the subset of the plurality of user interface widgets; and generate the content page with at least a subset of the plurality of user interface widgets corresponding to the plurality of page slots. - View Dependent Claims (3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 24, 25)
-
-
14. A method comprising:
-
receiving, via at least one computing device, a request to generate a content page; identifying, via the at least one computing device, a page template corresponding to the requested content page, the page template defining at least one slot group, the at least one slot group comprising at least one page slot having a common geometry and located at a common location within the page template, the at least one page slot corresponding to at least one content location in the content page, the at least one page slot being ranked according to a placement value within the at least one slot group, the placement value based upon an engagement metric expressing an historical amount of user interaction with the at least one page slot relative to other page slots; generating, via the at least one computing device, at least one ranking of a plurality of user interface widgets according to an effectiveness metric, wherein the ranking is randomized according to a degree of randomness so that lowly ranked ones of the plurality of user interface widgets have an opportunity to be highly ranked according to the effectiveness metric; matching, via the at least one computing device, each page slot within the at least one slot group with a respective user interface widget based at least in part upon the ranking, the placement value of each page slot, and whether a geometry of the at least one page slot matches a requested geometry of a particular one of the plurality of user interface widgets; determine, prior to transmission of the content page to a browser rendering the content page on behalf of a client device, whether the respective user interface widget matched to each page slot returns an error in response to a request to generate markup language; prior to requesting that the respective user interface widget returning an error generate any markup language, initiate a request to generate markup language for a next highest ranked user interface widget according to the ranking that is not matched to a respective page slot. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23)
-
Specification