Jump to content
Дизайн и модификация IPS Community IPBSkinsBETA
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
nabaal

Удаление старых изображений из галереи

Recommended Posts

Удаление старых изображений из галереи автоматически !

 

Не подскажите как это можно сделать ?

Share this post


Link to post
Share on other sites

Зачем их удалять? А если там есть просматриваемые изображения которые несут определенную пользу форуму?

Share this post


Link to post
Share on other sites
Старые фотобявления не несут никакой пользы кроме места на диске, с учётом того что каждый день добовляют по 10-20 картинок ! )))

Все равно, надо как-то определить какие старые фотографии стоит удалять а какие нет.

Для удаления можно создать задачу, которая бы запускалась примерно раз в неделю.

Share this post


Link to post
Share on other sites

Как сделать эту задачу ?

Share this post


Link to post
Share on other sites

Как сделать эту задачу ?

В планировщике задач создается задача + нужно будет написать скрипт.

Share this post


Link to post
Share on other sites

Кто поможет написать скрипт ?

Share this post


Link to post
Share on other sites

Как создать задачу в IPB https://www.invisionpower.com/support/guides/_/advanced-and-developers/application/tasks-r202

 

Для удаления изображения в галереи, используется метод $this->registry->gallery->helper('moderate')->deleteImages( $images );

 

	if ( !ipsRegistry::isClassLoaded('gallery') )
	{
		$classToLoad = IPSLib::loadLibrary( IPSLib::getAppDir('gallery') . '/sources/classes/gallery.php', 'ipsGallery', 'gallery' );
		$this->registry->setClass( 'gallery', new $classToLoad( $this->registry ) );
	}

	$old_days = 30;

	$images   = array();
	$idate    = time() - (86400 * $old_days);

	$this->DB->build( array( 'select' => '*', 'from' => 'gallery_images', 'where' => 'idate < '. $idate ) );
	$outer = $this->DB->execute();

	while( $r = $this->DB->fetch($outer) )
	{
		$images[] = $r;
	}

	if( count( $images ) )
	{
		$this->registry->gallery->helper('moderate')->deleteImages( $images );
	}

	$this->class->appendTaskLog( $this->task, 'Deleted '.count( $images ).' old images' );

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...