Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes

oxSeoEncoder Class Reference

Inheritance diagram for oxSeoEncoder:
Collaboration diagram for oxSeoEncoder:

List of all members.

Public Member Functions

 addLanguageParam ($sSeoUrl, $iLang)
 resetCache ()
 __construct ()
 getDynamicObjectId ($iShopId, $sStdUrl)
 encodeString ($sString, $blReplaceChars=true)
 setSeparator ($sSeparator=null)
 setPrefix ($sPrefix)
 setIdLength ($iIdlength=null)
 setReservedWords ($aReservedWords)
 markAsExpired ($sId, $iShopId=null, $iExpStat=1, $iLang=null, $sParams=null)
 encodeStaticUrls ($aStaticUrl, $iShopId, $iLang)
 copyStaticUrls ($iShopId)
 getStaticUrl ($sStdUrl, $iLang=null, $iShopId=null)
 addSeoEntry ($sObjectId, $iShopId, $iLang, $sStdUrl, $sSeoUrl, $sType, $blFixed=1, $sKeywords= '', $sDescription= '', $sParams= '', $blExclude=false, $sAltObjectId=null)
 deleteSeoEntry ($sObjectId, $iShopId, $iLang, $sType)
 getMetaData ($sObjectId, $sMetaType, $iShopId=null, $iLang=null)
 getDynamicUrl ($sStdUrl, $sSeoUrl, $iLang)
 fetchSeoUrl ($sStdUrl, $iLanguage=null)

Static Public Member Functions

static getInstance ()

Protected Member Functions

 _processSeoUrl ($sSeoUrl, $sObjectId=null, $iLang=null, $blExclude=false)
 _copyToHistory ($sId, $iShopId, $iLang, $sType=null, $sNewId=null)
 _getDynamicUri ($sStdUrl, $sSeoUrl, $iLang)
 _getFullUrl ($sSeoUrl, $iLang=null, $blSsl=false)
 _getSeoIdent ($sSeoUrl)
 _getStaticUri ($sStdUrl, $iShopId, $iLang)
 _getUrlExtension ()
 _getUniqueSeoUrl ($sSeoUrl, $sObjectId=null, $iObjectLang=null)
 _isFixed ($sType, $sId, $iLang, $iShopId=null, $sParams=null, $blStrictParamsCheck=true)
 _loadFromDb ($sType, $sId, $iLang, $iShopId=null, $sParams=null, $blStrictParamsCheck=true)
 _getReservedEntryKeys ()
 _prepareUri ($sUri)
 _prepareTitle ($sTitle, $blSkipTruncate=false)
 _saveToDb ($sType, $sObjectId, $sStdUrl, $sSeoUrl, $iLang, $iShopId=null, $blFixed=null, $sParams=null)
 _trimUrl ($sUrl, $iLang=null)
 _getPageUri ($oObject, $sType, $sStdUrl, $sSeoUrl, $sParams, $iLang=null, $blFixed=false)
 _getStaticObjectId ($iShopId, $sStdUrl)
 _getAltUri ($sObjectId, $iLang)

Protected Attributes

 $_iIdLength = 255
 $_sAddParams = null
 $_aSeoCache = array()
 $_aFixedCache = array()

Static Protected Attributes

static $_aReservedWords = array( 'admin' )
static $_aReservedEntryKeys = null
static $_sSeparator = null
static $_sPrefix = null
static $_instance = null

Detailed Description

Seo encoder base

Definition at line 7 of file oxseoencoder.php.


Constructor & Destructor Documentation

oxSeoEncoder.__construct (  ) 

SEO encoder constructor

Reimplemented from oxSuperCfg.

Definition at line 154 of file oxseoencoder.php.


Member Function Documentation

oxSeoEncoder._copyToHistory ( sId,
iShopId,
iLang,
sType = null,
sNewId = null 
) [protected]

Moves current seo record to seo history table

Parameters:
string $sId object id
int $iShopId active shop id
int $iLang object language
string $sType object type (if you pass real object - type is not necessary)
string $sNewId new object id, mostly used for static url updates (optional)
Returns:
null

Definition at line 177 of file oxseoencoder.php.

oxSeoEncoder._getAltUri ( sObjectId,
iLang 
) [protected]

Returns alternative uri used while updating seo

Parameters:
string $sObjectId object id
int $iLang language id
Returns:
null

Reimplemented in oxSeoEncoderArticle, oxSeoEncoderCategory, oxSeoEncoderContent, oxSeoEncoderManufacturer, and oxSeoEncoderVendor.

Definition at line 1020 of file oxseoencoder.php.

oxSeoEncoder._getDynamicUri ( sStdUrl,
sSeoUrl,
iLang 
) [protected]

Returns dynamic object SEO URI

Parameters:
string $sStdUrl standart url
string $sSeoUrl seo uri
int $iLang active language
Returns:
string

Definition at line 214 of file oxseoencoder.php.

oxSeoEncoder._getFullUrl ( sSeoUrl,
iLang = null,
blSsl = false 
) [protected]

Returns SEO url with shop's path + additional params ( oxseoencoder:: _getAddParams)

Parameters:
string $sSeoUrl seo URL
int $iLang active language
bool $blSsl forces to build ssl url
Returns:
string

Definition at line 252 of file oxseoencoder.php.

oxSeoEncoder._getPageUri ( oObject,
sType,
sStdUrl,
sSeoUrl,
sParams,
iLang = null,
blFixed = false 
) [protected]

Loads if exists or prepares and saves new seo url for passed object

Parameters:
oxbase $oObject object to prepare seo data
string $sType type of object (oxvendor/oxcategory)
string $sStdUrl stanradr url
string $sSeoUrl seo uri
string $sParams additional params, liek page number etc. mostly used by mysql for indexes
int $iLang language
bool $blFixed fixed url marker (default is false)
Returns:
string

Definition at line 800 of file oxseoencoder.php.

oxSeoEncoder._getReservedEntryKeys (  )  [protected]

cached getter: check root directory php file names for them not to be in 1st part of seo url because then apache will execute that php file instead of url parser

Returns:
array

Definition at line 460 of file oxseoencoder.php.

oxSeoEncoder._getSeoIdent ( sSeoUrl  )  [protected]

_getSeoIdent returns seo ident for db search

Parameters:
string $sSeoUrl seo url

protected

Returns:
string

Definition at line 270 of file oxseoencoder.php.

oxSeoEncoder._getStaticObjectId ( iShopId,
sStdUrl 
) [protected]

Generates static url object id

Parameters:
int $iShopId shop id
string $sStdUrl standard (dynamic) url
Returns:
string

Definition at line 828 of file oxseoencoder.php.

oxSeoEncoder._getStaticUri ( sStdUrl,
iShopId,
iLang 
) [protected]

Returns SEO static uri

Parameters:
string $sStdUrl standard page url
int $iShopId active shop id
int $iLang active language
Returns:
string

Definition at line 284 of file oxseoencoder.php.

oxSeoEncoder._getUniqueSeoUrl ( sSeoUrl,
sObjectId = null,
iObjectLang = null 
) [protected]

_getUniqueSeoUrl returns possibly modified url for not to be same as already existing in db

Parameters:
string $sSeoUrl seo url
string $sObjectId current object id, used to skip self in query
int $iObjectLang object language id

protected

Returns:
string

Definition at line 312 of file oxseoencoder.php.

oxSeoEncoder._getUrlExtension (  )  [protected]

Returns target "extension"

Returns:
null

Reimplemented in oxSeoEncoderArticle, oxSeoEncoderCategory, oxSeoEncoderContent, oxSeoEncoderManufacturer, and oxSeoEncoderVendor.

Definition at line 295 of file oxseoencoder.php.

oxSeoEncoder._isFixed ( sType,
sId,
iLang,
iShopId = null,
sParams = null,
blStrictParamsCheck = true 
) [protected]

check if seo url exist and is fixed

Parameters:
string $sType object type
string $sId object identifier
int $iLang active language id
mixed $iShopId active shop id
string $sParams additional seo params. optional (mostly used for db indexing)
bool $blStrictParamsCheck strict parameters check

protected

Returns:
bool

Definition at line 367 of file oxseoencoder.php.

oxSeoEncoder._loadFromDb ( sType,
sId,
iLang,
iShopId = null,
sParams = null,
blStrictParamsCheck = true 
) [protected]

_loadFromDb loads data from oxseo table if exists returns oxseo url

Parameters:
string $sType object type
string $sId object identifier
int $iLang active language id
mixed $iShopId active shop id
string $sParams additional seo params. optional (mostly used for db indexing)
bool $blStrictParamsCheck strict parameters check

protected

Returns:
string || false

Definition at line 408 of file oxseoencoder.php.

oxSeoEncoder._prepareTitle ( sTitle,
blSkipTruncate = false 
) [protected]

Prepares and returns formatted object SEO id

Parameters:
string $sTitle Original object title
bool $blSkipTruncate Truncate title into defined lenght or not
Returns:
string

Definition at line 548 of file oxseoencoder.php.

oxSeoEncoder._prepareUri ( sUri  )  [protected]

Makes safe seo uri - removes unsupported/reserved characters

Parameters:
string $sUri seo uri
Returns:
string

Definition at line 486 of file oxseoencoder.php.

oxSeoEncoder._processSeoUrl ( sSeoUrl,
sObjectId = null,
iLang = null,
blExclude = false 
) [protected]

Processes seo url before saving to db:

  • oxseoencoder.addLanguageParam();
  • oxseoencoder._getUniqueSeoUrl().
Parameters:
string $sSeoUrl seo url to process
string $sObjectId seo object id [optional]
int $iLang active language id [optional]
bool $blExclude exclude language prefix while building seo url
Returns:
string

Definition at line 133 of file oxseoencoder.php.

oxSeoEncoder._saveToDb ( sType,
sObjectId,
sStdUrl,
sSeoUrl,
iLang,
iShopId = null,
blFixed = null,
sParams = null 
) [protected]

_saveToDb saves values to seo table

Parameters:
string $sType url type (static, dynamic, oxarticle etc)
string $sObjectId object identifier
string $sStdUrl standard url
string $sSeoUrl seo url
int $iLang active object language
mixed $iShopId active object shop id
bool $blFixed seo entry marker. if true, entry should not be automatically changed
string $sParams additional seo params. optional (mostly used for db indexing)

protected

Returns:
void

Definition at line 594 of file oxseoencoder.php.

oxSeoEncoder._trimUrl ( sUrl,
iLang = null 
) [protected]

Removes shop path part and session id from given url

Parameters:
string $sUrl url to clean bad chars
int $iLang active language

protected

Returns:
string

Definition at line 667 of file oxseoencoder.php.

oxSeoEncoder.addLanguageParam ( sSeoUrl,
iLang 
)

Returns part of url defining active language

Parameters:
string $sSeoUrl seo url
int $iLang language id
Returns:
string

Definition at line 108 of file oxseoencoder.php.

oxSeoEncoder.addSeoEntry ( sObjectId,
iShopId,
iLang,
sStdUrl,
sSeoUrl,
sType,
blFixed = 1,
sKeywords = '',
sDescription = '',
sParams = '',
blExclude = false,
sAltObjectId = null 
)

Adds new seo entry to db

Parameters:
string $sObjectId objects id
int $iShopId shop id
int $iLang objects language
string $sStdUrl default url
string $sSeoUrl seo url
string $sType object type
bool $blFixed marker to keep seo config unchangeable
string $sKeywords seo keywords
string $sDescription seo description
string $sParams additional seo params. optional (mostly used for db indexing)
bool $blExclude exclude language prefix while building seo url
string $sAltObjectId alternative object id used while saving meta info (used to override object id when saving tags related info)
Returns:
null

Definition at line 982 of file oxseoencoder.php.

oxSeoEncoder.copyStaticUrls ( iShopId  ) 

Method copies static urls from base shop to newly created

Parameters:
int $iShopId new created shop id
Returns:
null

Definition at line 917 of file oxseoencoder.php.

oxSeoEncoder.deleteSeoEntry ( sObjectId,
iShopId,
iLang,
sType 
)

Removes seo entry from db

Parameters:
string $sObjectId objects id
int $iShopId shop id
int $iLang objects language
string $sType object type
Returns:
null

Definition at line 1034 of file oxseoencoder.php.

oxSeoEncoder.encodeStaticUrls ( aStaticUrl,
iShopId,
iLang 
)

Static url encoder

Parameters:
array $aStaticUrl static url info (contains standard URL and urls for each language)
int $iShopId active shop id
int $iLang active language
Returns:
null

Definition at line 842 of file oxseoencoder.php.

oxSeoEncoder.encodeString ( sString,
blReplaceChars = true 
)

Replaces special chars in text

Parameters:
string $sString string to encode
bool $blReplaceChars is true, replaces user defined (oxconfig.aSeoReplaceChars) characters into alternative
Returns:
string

Definition at line 690 of file oxseoencoder.php.

oxSeoEncoder.fetchSeoUrl ( sStdUrl,
iLanguage = null 
)

Searches for seo url in seo table. If not found - FALSE is returned

Parameters:
string $sStdUrl standard url
integer $iLanguage language
Returns:
mixed

Definition at line 1089 of file oxseoencoder.php.

oxSeoEncoder.getDynamicObjectId ( iShopId,
sStdUrl 
)

Generates dynamic url object id (calls oxseoencoder._getStaticObjectId)

Parameters:
int $iShopId shop id
string $sStdUrl standard (dynamic) url
Returns:
string

Definition at line 200 of file oxseoencoder.php.

oxSeoEncoder.getDynamicUrl ( sStdUrl,
sSeoUrl,
iLang 
)

getDynamicUrl acts similar to static urls, except, that dynamic url are not shown in admin and they can be reencoded by providing new seo url

Parameters:
string $sStdUrl standard url
string $sSeoUrl part of URL query which will be attached to standard shop url
int $iLang active language

public

Returns:
string

Definition at line 1073 of file oxseoencoder.php.

static oxSeoEncoder.getInstance (  )  [static]

Singleton method

Returns:
oxseoencoder

Reimplemented in oxSeoEncoderArticle, oxSeoEncoderCategory, oxSeoEncoderContent, oxSeoEncoderManufacturer, oxSeoEncoderRecomm, oxSeoEncoderTag, and oxSeoEncoderVendor.

Definition at line 78 of file oxseoencoder.php.

oxSeoEncoder.getMetaData ( sObjectId,
sMetaType,
iShopId = null,
iLang = null 
)

Returns meta information for preferred object

Parameters:
string $sObjectId information object id
string $sMetaType metadata type - "oxkeywords", "oxdescription"
int $iShopId active shop id [optional]
int $iLang active language [optional]
Returns:
string

Definition at line 1051 of file oxseoencoder.php.

oxSeoEncoder.getStaticUrl ( sStdUrl,
iLang = null,
iShopId = null 
)

Returns static url for passed standard link (if available)

Parameters:
string $sStdUrl standard Url
int $iLang active language (optional). default null
int $iShopId active shop id (optional). default null
Returns:
string

Definition at line 940 of file oxseoencoder.php.

oxSeoEncoder.markAsExpired ( sId,
iShopId = null,
iExpStat = 1,
iLang = null,
sParams = null 
)

Marks object seo records as expired

Parameters:
string $sId changed object id. If null is passed, object dependency is not checked
int $iShopId active shop id. Shop id must be passed uf you want to do shop level update (default null)
int $iExpStat expiration status: 1 - standard expiration
int $iLang active language (optiona;)
string $sParams additional params
Returns:
null

Definition at line 775 of file oxseoencoder.php.

oxSeoEncoder.resetCache (  ) 

Resets seo cache (use in case you need forced reset)

Returns:
null

Definition at line 146 of file oxseoencoder.php.

oxSeoEncoder.setIdLength ( iIdlength = null  ) 

sets seo id length

Parameters:
string $iIdlength id length
Returns:
null

Definition at line 743 of file oxseoencoder.php.

oxSeoEncoder.setPrefix ( sPrefix  ) 

Sets SEO prefix

Parameters:
string $sPrefix SEO prefix
Returns:
null

Definition at line 727 of file oxseoencoder.php.

oxSeoEncoder.setReservedWords ( aReservedWords  ) 

Sets array of words which must be checked before building seo url These words are appended by seo prefix if they are the initial uri segment

Parameters:
array $aReservedWords reserved words
Returns:
null

Definition at line 758 of file oxseoencoder.php.

oxSeoEncoder.setSeparator ( sSeparator = null  ) 

Sets SEO separator

Parameters:
string $sSeparator SEO seperator
Returns:
null

Definition at line 712 of file oxseoencoder.php.


Member Data Documentation

oxSeoEncoder.$_aFixedCache = array() [protected]

Url fixed state cache

Returns:
array

Definition at line 71 of file oxseoencoder.php.

oxSeoEncoder.$_aReservedEntryKeys = null [static, protected]

Definition at line 22 of file oxseoencoder.php.

oxSeoEncoder.$_aReservedWords = array( 'admin' ) [static, protected]

Definition at line 15 of file oxseoencoder.php.

oxSeoEncoder.$_aSeoCache = array() [protected]

Definition at line 64 of file oxseoencoder.php.

oxSeoEncoder.$_iIdLength = 255 [protected]

Definition at line 36 of file oxseoencoder.php.

oxSeoEncoder.$_instance = null [static, protected]
oxSeoEncoder.$_sAddParams = null [protected]

Definition at line 50 of file oxseoencoder.php.

oxSeoEncoder.$_sPrefix = null [static, protected]

Definition at line 43 of file oxseoencoder.php.

oxSeoEncoder.$_sSeparator = null [static, protected]

Definition at line 29 of file oxseoencoder.php.


The documentation for this class was generated from the following file: